brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.6 KiB · 0ebc7b2 Raw
71 lines · plain
1; RUN: llc < %s -asm-verbose=false -mcpu=mvp -disable-wasm-fallthrough-return-opt -wasm-keep-registers -verify-machineinstrs | FileCheck %s2; RUN: llc < %s -asm-verbose=false -mcpu=mvp -wasm-keep-registers -fast-isel -verify-machineinstrs | FileCheck %s3 4; Test that FastISel does not generate instructions with NoReg5 6target triple = "wasm32-unknown-unknown"7 8; CHECK: i32.const {{.*}}, addr9; CHECK: i32.const {{.*}}, 2410; CHECK: i32.shl11; CHECK: i32.const {{.*}}, 2412; CHECK: i32.shr_s13; CHECK: i32.const {{.*}}, 6414; CHECK: i32.lt_s15; CHECK: i32.const {{.*}}, 116; CHECK: i32.and17; CHECK: i32.eqz18; CHECK: br_if 0, $pop{{[0-9]+}}19define hidden i32 @d() #0 {20entry:21  %t = icmp slt i8 ptrtoint (ptr @addr to i8), 6422  br i1 %t, label %a, label %b23a:24  unreachable25b:26  ret i32 027}28 29; CHECK: i32.const {{.*}}, addr30; CHECK: i32.const {{.*}}, 25531; CHECK: i32.and32; CHECK: i32.const {{.*}}, 6433; CHECK: i32.lt_u34; CHECK: i32.const {{.*}}, 135; CHECK: i32.and36; CHECK: i32.eqz37; CHECK: br_if 0, $pop{{[0-9]+}}38define hidden i32 @e() #0 {39entry:40  %t = icmp ult i8 ptrtoint (ptr @addr to i8), 6441  br i1 %t, label %a, label %b42a:43  unreachable44b:45  ret i32 046}47 48; CHECK: i32.const {{.*}}, addr49; CHECK: i32.const {{.*}}, 2450; CHECK: i32.shl51; CHECK: i32.const {{.*}}, 2452; CHECK: i32.shr_s53define hidden i32 @f() #0 {54entry:55  %t = sext i8 ptrtoint (ptr @addr to i8) to i3256  ret i32 %t57}58 59; CHECK: i32.const {{.*}}, addr60; CHECK: i32.const {{.*}}, 25561; CHECK: i32.and62define hidden i32 @g() #0 {63entry:64  %t = zext i8 ptrtoint (ptr @addr to i8) to i3265  ret i32 %t66}67 68declare void @addr()69 70attributes #0 = { noinline optnone }71