summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWouter van Oortmerssen <aardappel@gmail.com>2018-10-04 23:48:53 +0000
committerWouter van Oortmerssen <aardappel@gmail.com>2018-10-04 23:48:53 +0000
commit003c7e9477b70044f1b6e9cdd3e51fab9884953d (patch)
tree53988ed999a8c3b7b6f2842787ab10f69b2cf79e
parentb0e1e18c3d200184c196285f0310cbab0424f7ac (diff)
[WebAssembly] Fixed missing "global" symbol type in AsmParser.
Summary: These are emitted by the wasm backend for e.g. __stack_pointer@GLOBAL which previously wasn't accepted by the assembler. Reviewers: aheejin, dschuff Subscribers: sbc100, jgravelle-google, llvm-commits, sunfish Differential Revision: https://reviews.llvm.org/D52911
-rw-r--r--llvm/lib/MC/MCExpr.cpp1
-rw-r--r--llvm/test/MC/WebAssembly/basic-assembly.s2
2 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/MC/MCExpr.cpp b/llvm/lib/MC/MCExpr.cpp
index c3cb3edd383..a4458e64bd3 100644
--- a/llvm/lib/MC/MCExpr.cpp
+++ b/llvm/lib/MC/MCExpr.cpp
@@ -419,6 +419,7 @@ MCSymbolRefExpr::getVariantKindForName(StringRef Name) {
.Case("hi8", VK_AVR_HI8)
.Case("hlo8", VK_AVR_HLO8)
.Case("function", VK_WebAssembly_FUNCTION)
+ .Case("global", VK_WebAssembly_GLOBAL)
.Case("typeindex", VK_WebAssembly_TYPEINDEX)
.Case("gotpcrel32@lo", VK_AMDGPU_GOTPCREL32_LO)
.Case("gotpcrel32@hi", VK_AMDGPU_GOTPCREL32_HI)
diff --git a/llvm/test/MC/WebAssembly/basic-assembly.s b/llvm/test/MC/WebAssembly/basic-assembly.s
index b7d0dc00487..cc60143639f 100644
--- a/llvm/test/MC/WebAssembly/basic-assembly.s
+++ b/llvm/test/MC/WebAssembly/basic-assembly.s
@@ -47,6 +47,7 @@ test0:
#i32x4.trunc_s/f32x4:sat
i32.trunc_s/f32
#i32.trunc_s:sat/f32
+ get_global __stack_pointer@GLOBAL
end_function
@@ -87,4 +88,5 @@ test0:
# CHECK-NEXT: get_local 5
# CHECK-NEXT: f32x4.add
# CHECK-NEXT: i32.trunc_s/f32
+# CHECK-NEXT: get_global __stack_pointer@GLOBAL
# CHECK-NEXT: end_function