summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
diff options
context:
space:
mode:
authorDan Gohman <dan433584@gmail.com>2015-12-15 02:20:44 +0000
committerDan Gohman <dan433584@gmail.com>2015-12-15 02:20:44 +0000
commitdcba338188e4b427356eea5fcad566332bb47e41 (patch)
tree54050c0bef391ce63e1901019a46b8c86509ccbf /llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
parent65f0a71f40d2525d9d0c306b528209d21c8dd19e (diff)
downloadbcm5719-llvm-dcba338188e4b427356eea5fcad566332bb47e41.tar.gz
bcm5719-llvm-dcba338188e4b427356eea5fcad566332bb47e41.zip
[WebAssembly] Remove .import printing.
For now, LLVM doesn't know about wasm module imports, so it shouldn't emit .import directives. llvm-svn: 255602
Diffstat (limited to 'llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp')
-rw-r--r--llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp58
1 files changed, 0 insertions, 58 deletions
diff --git a/llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp b/llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
index fc2928079d2..c1403fb0c9e 100644
--- a/llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
+++ b/llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
@@ -71,7 +71,6 @@ private:
void EmitConstantPool() override;
void EmitFunctionBodyStart() override;
void EmitInstruction(const MachineInstr *MI) override;
- void EmitEndOfAsmFile(Module &M) override;
bool PrintAsmOperand(const MachineInstr *MI, unsigned OpNo,
unsigned AsmVariant, const char *ExtraCode,
raw_ostream &OS) override;
@@ -213,63 +212,6 @@ void WebAssemblyAsmPrinter::EmitInstruction(const MachineInstr *MI) {
}
}
-void WebAssemblyAsmPrinter::EmitEndOfAsmFile(Module &M) {
- const DataLayout &DL = M.getDataLayout();
-
- SmallString<128> Str;
- raw_svector_ostream OS(Str);
- for (const Function &F : M)
- if (F.isDeclarationForLinker()) {
- assert(F.hasName() && "imported functions must have a name");
- if (F.isIntrinsic())
- continue;
- if (Str.empty())
- OS << "\t.imports\n";
-
- MCSymbol *Sym = OutStreamer->getContext().getOrCreateSymbol(F.getName());
- OS << "\t.import " << *Sym << " \"\" " << *Sym;
-
- const WebAssemblyTargetLowering &TLI =
- *TM.getSubtarget<WebAssemblySubtarget>(F).getTargetLowering();
-
- // If we need to legalize the return type, it'll get converted into
- // passing a pointer.
- bool SawParam = false;
- SmallVector<MVT, 4> ResultVTs;
- ComputeLegalValueVTs(F, TM, F.getReturnType(), ResultVTs);
- if (ResultVTs.size() > 1) {
- ResultVTs.clear();
- OS << " (param " << toString(TLI.getPointerTy(DL));
- SawParam = true;
- }
-
- for (const Argument &A : F.args()) {
- SmallVector<MVT, 4> ParamVTs;
- ComputeLegalValueVTs(F, TM, A.getType(), ParamVTs);
- for (MVT VT : ParamVTs) {
- if (!SawParam) {
- OS << " (param";
- SawParam = true;
- }
- OS << ' ' << toString(VT);
- }
- }
- if (SawParam)
- OS << ')';
-
- for (MVT VT : ResultVTs)
- OS << " (result " << toString(VT) << ')';
-
- OS << '\n';
- }
-
- StringRef Text = OS.str();
- if (!Text.empty())
- OutStreamer->EmitRawText(Text.substr(0, Text.size() - 1));
-
- AsmPrinter::EmitEndOfAsmFile(M);
-}
-
bool WebAssemblyAsmPrinter::PrintAsmOperand(const MachineInstr *MI,
unsigned OpNo, unsigned AsmVariant,
const char *ExtraCode,
OpenPOWER on IntegriCloud