about summary refs log tree commit diff
path: root/src/rustllvm/RustGCStrategy.cpp
diff options
context:
space:
mode:
authorPatrick Walton <pcwalton@mimiga.net>2011-08-17 19:11:01 -0700
committerPatrick Walton <pcwalton@mimiga.net>2011-08-17 19:18:44 -0700
commit117d21d6c25813a8894bd18170bb75a61e927acc (patch)
treecee4d1f8cd93981c887083b6236e784f710b94d3 /src/rustllvm/RustGCStrategy.cpp
parent51af43f192407c4920134638e910c85f8ee6ee36 (diff)
downloadrust-117d21d6c25813a8894bd18170bb75a61e927acc.tar.gz
rust-117d21d6c25813a8894bd18170bb75a61e927acc.zip
rustc: Stub stack map generation machinery
Diffstat (limited to 'src/rustllvm/RustGCStrategy.cpp')
-rw-r--r--src/rustllvm/RustGCStrategy.cpp21
1 files changed, 9 insertions, 12 deletions
diff --git a/src/rustllvm/RustGCStrategy.cpp b/src/rustllvm/RustGCStrategy.cpp
index 0c86856939c..49497600725 100644
--- a/src/rustllvm/RustGCStrategy.cpp
+++ b/src/rustllvm/RustGCStrategy.cpp
@@ -16,19 +16,16 @@
 
 using namespace llvm;
 
-namespace {
-  class RustGCStrategy : public GCStrategy {
-  public:
-    RustGCStrategy();
-  };
-}
+class RustGCStrategy : public GCStrategy {
+public:
+  RustGCStrategy() {
+    NeededSafePoints = 1 << GC::PostCall;
+    UsesMetadata = true;
+    InitRoots = false;  // LLVM crashes with this on due to bitcasts.
+  }
+};
 
 static GCRegistry::Add<RustGCStrategy>
-X("rust", "Rust GC");
-
-RustGCStrategy::RustGCStrategy() {
-  NeededSafePoints = 1 << GC::PostCall;
-  UsesMetadata = true;
-}
+RustGCStrategyRegistration("rust", "Rust GC");