blob: b444dc05c1964d210523ea9442894bfd14ff1ae0 [file] [log] [blame]
Karl Schimpf8d7abae2014-07-07 14:50:30 -07001//===- subzero/src/IceClFlags.h - Cl Flags for translation ------*- C++ -*-===//
2//
3// The Subzero Code Generator
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9//
10// This file declares command line flags controlling translation.
11//
12//===----------------------------------------------------------------------===//
13
14#ifndef SUBZERO_SRC_ICECLFLAGS_H
15#define SUBZERO_SRC_ICECLFLAGS_H
16
Karl Schimpf5ee234a2014-09-12 10:41:40 -070017#include "IceTypes.def"
18
Karl Schimpf8d7abae2014-07-07 14:50:30 -070019namespace Ice {
20
21class ClFlags {
22public:
23 ClFlags()
24 : DisableInternal(false), SubzeroTimingEnabled(false),
Jim Stichnoth2a063e22014-10-08 11:24:51 -070025 DisableTranslation(false), FunctionSections(false), DataSections(false),
Jan Voung08c3bcd2014-12-01 17:55:16 -080026 UseELFWriter(false), UseIntegratedAssembler(false),
27 UseSandboxing(false), PhiEdgeSplit(false), DecorateAsm(false),
28 DumpStats(false), AllowUninitializedGlobals(false),
29 TimeEachFunction(false), DisableIRGeneration(false),
Karl Schimpf2e7daef2015-01-09 13:04:13 -080030 AllowErrorRecovery(false), GenerateUnitTestMessages(false),
Jan Voung08c3bcd2014-12-01 17:55:16 -080031 DefaultGlobalPrefix(""), DefaultFunctionPrefix(""), TimingFocusOn(""),
32 VerboseFocusOn(""), TranslateOnly("") {}
Karl Schimpf8d7abae2014-07-07 14:50:30 -070033 bool DisableInternal;
34 bool SubzeroTimingEnabled;
35 bool DisableTranslation;
Jim Stichnoth989a7032014-08-08 10:13:44 -070036 bool FunctionSections;
Karl Schimpfe3f64d02014-10-07 10:38:22 -070037 bool DataSections;
Jan Voung08c3bcd2014-12-01 17:55:16 -080038 bool UseELFWriter;
Jan Voung8acded02014-09-22 18:02:25 -070039 bool UseIntegratedAssembler;
Jim Stichnothbfb03e52014-08-26 10:29:05 -070040 bool UseSandboxing;
Jim Stichnoth088b2be2014-10-23 12:02:08 -070041 bool PhiEdgeSplit;
Jim Stichnoth3d44fe82014-11-01 10:10:18 -070042 bool DecorateAsm;
Jim Stichnoth18735602014-09-16 19:59:35 -070043 bool DumpStats;
Karl Schimpfe3f64d02014-10-07 10:38:22 -070044 bool AllowUninitializedGlobals;
Jim Stichnoth8363a062014-10-07 10:02:38 -070045 bool TimeEachFunction;
Karl Schimpf6fcbddd2014-11-06 09:49:24 -080046 bool DisableIRGeneration;
Karl Schimpf2e7daef2015-01-09 13:04:13 -080047 bool AllowErrorRecovery;
48 bool GenerateUnitTestMessages;
Karl Schimpf5ee234a2014-09-12 10:41:40 -070049 IceString DefaultGlobalPrefix;
50 IceString DefaultFunctionPrefix;
Jim Stichnoth8363a062014-10-07 10:02:38 -070051 IceString TimingFocusOn;
52 IceString VerboseFocusOn;
Jim Stichnoth088b2be2014-10-23 12:02:08 -070053 IceString TranslateOnly;
Karl Schimpf8d7abae2014-07-07 14:50:30 -070054};
Jim Stichnoth989a7032014-08-08 10:13:44 -070055
56} // end of namespace Ice
Karl Schimpf8d7abae2014-07-07 14:50:30 -070057
58#endif // SUBZERO_SRC_ICECLFLAGS_H