Index: src/IceConverter.h |
diff --git a/src/IceConverter.h b/src/IceConverter.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..00f125622fe1b1ac7e171bea17a083b04405bd90 |
--- /dev/null |
+++ b/src/IceConverter.h |
@@ -0,0 +1,46 @@ |
+//===- subzero/src/IceConverter.h - Converts LLVM to Ice ------*- C++ -*-===// |
Jim Stichnoth
2014/06/24 23:06:37
Space this out to 80 chars like the other similar
Karl
2014/06/25 16:02:05
Done.
|
+// |
+// The Subzero Code Generator |
+// |
+// This file is distributed under the University of Illinois Open Source |
+// License. See LICENSE.TXT for details. |
+// |
+//===----------------------------------------------------------------------===// |
+// |
+// This file declares the LLVM to ICE converter. |
+// |
+//===----------------------------------------------------------------------===// |
+ |
+#ifndef SUBZERO_SRC_ICECONVERTER_H |
+#define SUBZERO_SRC_ICECONVERTER_H |
+ |
+#include "IceGlobalContext.h" |
+ |
+namespace llvm { |
Jim Stichnoth
2014/06/24 23:06:37
Does this need to be inside the llvm namespace? I
Karl
2014/06/25 16:02:05
First off, it is a bad idea to use "using namespac
Jim Stichnoth
2014/06/26 23:50:12
Yeah, you're right about "using namespace" and hea
Karl
2014/06/27 16:15:21
Done.
|
+ |
+class Module; |
+ |
+class LLVM2ICEConverterDriver { |
+public: |
+ LLVM2ICEConverterDriver(Ice::GlobalContext *Ctx, |
+ bool DisableInternal, |
+ bool SubzeroTimingEnabled, |
+ bool DisableTranslation) |
+ : Ctx(Ctx), |
+ DisableInternal(DisableInternal), |
+ SubzeroTimingEnabled(SubzeroTimingEnabled), |
+ DisableTranslation(DisableTranslation) |
+ {} |
+ /// Converts the LLVM Module to ICE. Returns exit status 0 if successful, |
+ /// Nonzero otherwise. |
+ int convertToIce(Module *Mod); |
+private: |
+ Ice::GlobalContext *Ctx; |
+ bool DisableInternal; |
+ bool SubzeroTimingEnabled; |
+ bool DisableTranslation; |
+}; |
+ |
+} |
+ |
+#endif // SUBZERO_SRC_ICECONVERTER_H |