1 //===- Parallelize.h - Auto parallelization using DS Graphs -----*- C++ -*-===//
3 // Externally visible routines related to the IPO pass Parallelize in
4 // lib/Transforms/IPO/Parallelize.cpp. That pass automatically parallelizes
5 // a program using the Cilk multi-threaded runtime system to execute
6 // parallel code. The routines here are used only to identify functions
7 // marked as Cilk operations.
8 //===----------------------------------------------------------------------===//
10 #ifndef LLVM_TRANSFORMS_PARALLELIZE_H
11 #define LLVM_TRANSFORMS_PARALLELIZE_H
16 //----------------------------------------------------------------------------
17 // Routines to identify Cilk functions, calls to Cilk functions, and syncs.
18 //----------------------------------------------------------------------------
20 extern bool isCilk(const Function& F);
21 extern bool isCilk(const CallInst& CI);
22 extern bool isSync(const CallInst& CI);
24 //===----------------------------------------------------------------------===//