[llvm] r245989 - WebAssembly: assert that there aren't any constant pools

JF Bastien via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 25 16:19:49 PDT 2015


Author: jfb
Date: Tue Aug 25 18:19:49 2015
New Revision: 245989

URL: http://llvm.org/viewvc/llvm-project?rev=245989&view=rev
Log:
WebAssembly: assert that there aren't any constant pools

WebAssembly will either use globals or immediates, since it's a virtual ISA.

Modified:
    llvm/trunk/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp

Modified: llvm/trunk/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp?rev=245989&r1=245988&r2=245989&view=diff
==============================================================================
--- llvm/trunk/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp (original)
+++ llvm/trunk/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp Tue Aug 25 18:19:49 2015
@@ -23,6 +23,7 @@
 
 #include "llvm/ADT/SmallString.h"
 #include "llvm/CodeGen/AsmPrinter.h"
+#include "llvm/CodeGen/MachineConstantPool.h"
 #include "llvm/CodeGen/MachineInstr.h"
 #include "llvm/IR/DataLayout.h"
 #include "llvm/IR/DebugInfo.h"
@@ -67,6 +68,7 @@ private:
   // AsmPrinter Implementation.
   //===------------------------------------------------------------------===//
 
+  void EmitConstantPool() override;
   void EmitFunctionEntryLabel() override;
   void EmitFunctionBodyStart() override;
   void EmitFunctionBodyEnd() override;
@@ -108,6 +110,11 @@ static const char *toType(const Type *Ty
   return "<invalid>";
 }
 
+void WebAssemblyAsmPrinter::EmitConstantPool() {
+  assert(MF->getConstantPool()->getConstants().empty() &&
+         "WebAssembly disables constant pools");
+}
+
 void WebAssemblyAsmPrinter::EmitFunctionEntryLabel() {
   SmallString<128> Str;
   raw_svector_ostream OS(Str);




More information about the llvm-commits mailing list