source: icGREP/icgrep-devel/icgrep/pablo/pablo_toolchain.h @ 5239

Last change on this file since 5239 was 5217, checked in by nmedfort, 3 years ago

Merged PabloFunction? and PabloKernel? classes. Updated projects where necessary.

File size: 828 bytes
Line 
1/*
2 *  Copyright (c) 2015 International Characters.
3 *  This software is licensed to the public under the Open Software License 3.0.
4 *  icgrep is a trademark of International Characters.
5 */
6
7#ifndef PABLO_TOOLCHAIN_H
8#define PABLO_TOOLCHAIN_H
9
10namespace llvm {
11namespace cl {
12class OptionCategory;
13}
14}
15
16namespace pablo {
17
18class PabloKernel;
19
20enum PabloDebugFlags {
21    PrintOptimizedREcode, PrintCompiledCCcode, PrintCompiledREcode, DumpTrace, PrintUnloweredCode
22};
23
24enum PabloCompilationFlags {
25    DisableSimplification, EnableCodeMotion, 
26    EnableMultiplexing, EnableLowering, EnablePreDistribution, EnablePostDistribution, EnablePrePassScheduling
27};
28   
29const llvm::cl::OptionCategory * pablo_toolchain_flags();
30
31bool DebugOptionIsSet(PabloDebugFlags flag);
32
33void pablo_function_passes(PabloKernel * kernel);
34
35}
36#endif
Note: See TracBrowser for help on using the repository browser.