brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.3 KiB · 2cbefc0 Raw
53 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc < %s -mtriple=x86_64-linux        | FileCheck %s3; RUN: llc < %s -mtriple=x86_64-linux-gnux32 | FileCheck %s4; RUN: llc < %s -mtriple=x86_64-win32        | FileCheck %s --check-prefix=WIN325 6define i64 @test2(i64 %a) {7; CHECK-LABEL: test2:8; CHECK:       # %bb.0:9; CHECK-NEXT:    leaq (,%rdi,4), %rax10; CHECK-NEXT:    orq %rdi, %rax11; CHECK-NEXT:    retq12;13; WIN32-LABEL: test2:14; WIN32:       # %bb.0:15; WIN32-NEXT:    leaq (,%rcx,4), %rax16; WIN32-NEXT:    orq %rcx, %rax17; WIN32-NEXT:    retq18  %tmp2 = shl i64 %a, 219	%tmp3 = or i64 %tmp2, %a20  ret i64 %tmp321}22 23define i32 @test(i32 %a) {24; CHECK-LABEL: test:25; CHECK:       # %bb.0:26; CHECK-NEXT:    # kill: def $edi killed $edi def $rdi27; CHECK-NEXT:    leal (%rdi,%rdi,2), %eax28; CHECK-NEXT:    retq29;30; WIN32-LABEL: test:31; WIN32:       # %bb.0:32; WIN32-NEXT:    # kill: def $ecx killed $ecx def $rcx33; WIN32-NEXT:    leal (%rcx,%rcx,2), %eax34; WIN32-NEXT:    retq35  %tmp2 = mul i32 %a, 336  ret i32 %tmp237}38 39define i64 @test3(i64 %a) {40; CHECK-LABEL: test3:41; CHECK:       # %bb.0:42; CHECK-NEXT:    leaq (,%rdi,8), %rax43; CHECK-NEXT:    retq44;45; WIN32-LABEL: test3:46; WIN32:       # %bb.0:47; WIN32-NEXT:    leaq (,%rcx,8), %rax48; WIN32-NEXT:    retq49  %tmp2 = shl i64 %a, 350  ret i64 %tmp251}52 53