From 7747d703e3c21ed2d16ba88382b8fb57389e085a Mon Sep 17 00:00:00 2001 From: Derek Schuff Date: Thu, 1 Dec 2016 00:11:15 +0000 Subject: [WebAssembly] Emit .import_global assembler directives Support a new assembler directive, .import_global, to declare imported global variables (i.e. those with external linkage and no initializer). The linker turns these into wasm imports. Patch by Jacob Gravelle Differential Revision: https://reviews.llvm.org/D26875 llvm-svn: 288296 --- .../Target/WebAssembly/MCTargetDesc/WebAssemblyTargetStreamer.cpp | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyTargetStreamer.cpp') diff --git a/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyTargetStreamer.cpp b/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyTargetStreamer.cpp index f0886880802..3cee8b2a184 100644 --- a/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyTargetStreamer.cpp +++ b/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyTargetStreamer.cpp @@ -80,6 +80,10 @@ void WebAssemblyTargetAsmStreamer::emitIndirectFunctionType( OS << '\n'; } +void WebAssemblyTargetAsmStreamer::emitGlobalImport(StringRef name) { + OS << "\t.import_global\t" << name << '\n'; +} + void WebAssemblyTargetAsmStreamer::emitIndIdx(const MCExpr *Value) { OS << "\t.indidx \t" << *Value << '\n'; } @@ -111,3 +115,6 @@ void WebAssemblyTargetELFStreamer::emitIndirectFunctionType( // Nothing to emit here. TODO: Re-design how linking works and re-evaluate // whether it's necessary for .o files to declare indirect function types. } + +void WebAssemblyTargetELFStreamer::emitGlobalImport(StringRef name) { +} \ No newline at end of file -- cgit v1.2.3