From 04e7fb778dbe8f99ea95bb40f57f5063a75669fd Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Thu, 21 Apr 2016 23:59:48 +0000 Subject: [WebAssembly] Limit alignment hints to natural alignment. This follows the current binary format rules. llvm-svn: 267082 --- llvm/test/CodeGen/WebAssembly/i32-load-store-alignment.ll | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'llvm/test/CodeGen/WebAssembly/i32-load-store-alignment.ll') diff --git a/llvm/test/CodeGen/WebAssembly/i32-load-store-alignment.ll b/llvm/test/CodeGen/WebAssembly/i32-load-store-alignment.ll index 89279fba1e5..3c48a1ad245 100644 --- a/llvm/test/CodeGen/WebAssembly/i32-load-store-alignment.ll +++ b/llvm/test/CodeGen/WebAssembly/i32-load-store-alignment.ll @@ -49,10 +49,12 @@ define i32 @ldi32(i32 *%p) { ret i32 %v } +; 8 is greater than the default alignment so it is ignored. + ; CHECK-LABEL: ldi32_a8: ; CHECK-NEXT: .param i32{{$}} ; CHECK-NEXT: .result i32{{$}} -; CHECK-NEXT: i32.load $push[[NUM:[0-9]+]]=, 0($0):p2align=3{{$}} +; CHECK-NEXT: i32.load $push[[NUM:[0-9]+]]=, 0($0){{$}} ; CHECK-NEXT: return $pop[[NUM]]{{$}} define i32 @ldi32_a8(i32 *%p) { %v = load i32, i32* %p, align 8 @@ -74,7 +76,7 @@ define i8 @ldi8_a1(i8 *%p) { ; CHECK-LABEL: ldi8_a2: ; CHECK-NEXT: .param i32{{$}} ; CHECK-NEXT: .result i32{{$}} -; CHECK-NEXT: i32.load8_u $push[[NUM:[0-9]+]]=, 0($0):p2align=1{{$}} +; CHECK-NEXT: i32.load8_u $push[[NUM:[0-9]+]]=, 0($0){{$}} ; CHECK-NEXT: return $pop[[NUM]]{{$}} define i8 @ldi8_a2(i8 *%p) { %v = load i8, i8* %p, align 2 @@ -104,7 +106,7 @@ define i16 @ldi16_a2(i16 *%p) { ; CHECK-LABEL: ldi16_a4: ; CHECK-NEXT: .param i32{{$}} ; CHECK-NEXT: .result i32{{$}} -; CHECK-NEXT: i32.load16_u $push[[NUM:[0-9]+]]=, 0($0):p2align=2{{$}} +; CHECK-NEXT: i32.load16_u $push[[NUM:[0-9]+]]=, 0($0){{$}} ; CHECK-NEXT: return $pop[[NUM]]{{$}} define i16 @ldi16_a4(i16 *%p) { %v = load i16, i16* %p, align 4 @@ -155,7 +157,7 @@ define void @sti32(i32 *%p, i32 %v) { ; CHECK-LABEL: sti32_a8: ; CHECK-NEXT: .param i32, i32{{$}} -; CHECK-NEXT: i32.store $discard=, 0($0):p2align=3, $1{{$}} +; CHECK-NEXT: i32.store $discard=, 0($0), $1{{$}} ; CHECK-NEXT: return{{$}} define void @sti32_a8(i32 *%p, i32 %v) { store i32 %v, i32* %p, align 8 @@ -175,7 +177,7 @@ define void @sti8_a1(i8 *%p, i8 %v) { ; CHECK-LABEL: sti8_a2: ; CHECK-NEXT: .param i32, i32{{$}} -; CHECK-NEXT: i32.store8 $discard=, 0($0):p2align=1, $1{{$}} +; CHECK-NEXT: i32.store8 $discard=, 0($0), $1{{$}} ; CHECK-NEXT: return{{$}} define void @sti8_a2(i8 *%p, i8 %v) { store i8 %v, i8* %p, align 2 @@ -202,7 +204,7 @@ define void @sti16_a2(i16 *%p, i16 %v) { ; CHECK-LABEL: sti16_a4: ; CHECK-NEXT: .param i32, i32{{$}} -; CHECK-NEXT: i32.store16 $discard=, 0($0):p2align=2, $1{{$}} +; CHECK-NEXT: i32.store16 $discard=, 0($0), $1{{$}} ; CHECK-NEXT: return{{$}} define void @sti16_a4(i16 *%p, i16 %v) { store i16 %v, i16* %p, align 4 -- cgit v1.2.3