Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(7)

Unified Diff: src/IceTargetLoweringX8664.h

Issue 1199043006: Subzero. Adds x86-64 to the list of supported Subzero targets. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Fixes unused variable warnings. Created 5 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/IceAssemblerX8664.cpp ('k') | src/IceTargetLoweringX8664.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/IceTargetLoweringX8664.h
diff --git a/src/IceTargetLoweringX8664.h b/src/IceTargetLoweringX8664.h
index 90daf8c23f7d22957e2038f564b705410b4e9dfe..302fb0f96ae25bc9e7da1de403c0aeace717720d 100644
--- a/src/IceTargetLoweringX8664.h
+++ b/src/IceTargetLoweringX8664.h
@@ -1,4 +1,4 @@
-//===- subzero/src/IceTargetLoweringX8664.h - x86-64 lowering ---*- C++ -*-===//
+//===- subzero/src/IceTargetLoweringX8664.h - lowering for x86-64 -*- C++ -*-=//
//
// The Subzero Code Generator
//
@@ -7,15 +7,16 @@
//
//===----------------------------------------------------------------------===//
//
-// This file declares the TargetLoweringX8664 class, which
-// implements the TargetLowering interface for the x86-64
-// architecture.
+// This file declares the TargetLoweringX8664 class, which implements the
+// TargetLowering interface for the X86 64-bit architecture.
//
//===----------------------------------------------------------------------===//
+
#ifndef SUBZERO_SRC_ICETARGETLOWERINGX8664_H
#define SUBZERO_SRC_ICETARGETLOWERINGX8664_H
-#include "IceDefs.h"
+#include "IceCfg.h"
+#include "IceGlobalContext.h"
#include "IceTargetLowering.h"
namespace Ice {
@@ -26,9 +27,10 @@ class TargetX8664 : public TargetLowering {
TargetX8664 &operator=(const TargetX8664 &) = delete;
public:
- static TargetX8664 *create(Cfg *) {
- llvm::report_fatal_error("Not yet implemented");
- }
+ static TargetX8664 *create(Cfg *Func);
+
+private:
+ explicit TargetX8664(Cfg *Func) : TargetLowering(Func) {}
};
class TargetDataX8664 : public TargetDataLowering {
@@ -37,9 +39,21 @@ class TargetDataX8664 : public TargetDataLowering {
TargetDataX8664 &operator=(const TargetDataX8664 &) = delete;
public:
+ ~TargetDataX8664() override = default;
+
static std::unique_ptr<TargetDataLowering> create(GlobalContext *Ctx) {
- llvm::report_fatal_error("Not yet implemented");
+ return makeUnique<TargetDataX8664>(Ctx);
}
+
+ void lowerGlobals(const VariableDeclarationList &Vars,
+ const IceString &SectionSuffix) override;
+
+ void lowerConstants() override;
+
+private:
+ ENABLE_MAKE_UNIQUE;
+
+ explicit TargetDataX8664(GlobalContext *Ctx) : TargetDataLowering(Ctx) {}
};
class TargetHeaderX8664 : public TargetHeaderLowering {
@@ -48,11 +62,17 @@ class TargetHeaderX8664 : public TargetHeaderLowering {
TargetHeaderX8664 &operator=(const TargetHeaderX8664 &) = delete;
public:
+ ~TargetHeaderX8664() = default;
+
static std::unique_ptr<TargetHeaderLowering> create(GlobalContext *Ctx) {
- llvm::report_fatal_error("Not yet implemented");
+ return makeUnique<TargetHeaderX8664>(Ctx);
}
-};
+private:
+ ENABLE_MAKE_UNIQUE;
+
+ explicit TargetHeaderX8664(GlobalContext *Ctx) : TargetHeaderLowering(Ctx) {}
+};
} // end of namespace Ice
-#endif // SUBZERO_SRC_ICETARGETLOWERINGX8664_H
+#endif // SUBZERO_SRC_ICETARGETLOWERINGX8664_H
« no previous file with comments | « src/IceAssemblerX8664.cpp ('k') | src/IceTargetLoweringX8664.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698