brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.4 KiB · ecdb802 Raw
44 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 52; RUN: llc -mtriple aarch64-windows -filetype asm -o - < %s | FileCheck %s3; RUN: llc -mtriple aarch64-windows -filetype asm -o - -fast-isel %s | FileCheck %s --check-prefix=FISEL4; RUN: llc -mtriple aarch64-windows -filetype asm -o - -global-isel -global-isel-abort=0 %s | FileCheck %s5 6define void @func() nounwind {7; CHECK-LABEL: func:8; CHECK:       // %bb.0:9; CHECK-NEXT:    str x30, [sp, #-16]! // 8-byte Folded Spill10; CHECK-NEXT:    adrp x8, .refptr.weakfunc11; CHECK-NEXT:    ldr x8, [x8, :lo12:.refptr.weakfunc]12; CHECK-NEXT:    cbz x8, .LBB0_213; CHECK-NEXT:  // %bb.1:14; CHECK-NEXT:    blr x815; CHECK-NEXT:  .LBB0_2:16; CHECK-NEXT:    ldr x30, [sp], #16 // 8-byte Folded Reload17; CHECK-NEXT:    ret18;19; FISEL-LABEL: func:20; FISEL:       // %bb.0:21; FISEL-NEXT:    str x30, [sp, #-16]! // 8-byte Folded Spill22; FISEL-NEXT:    adrp x8, .refptr.weakfunc23; FISEL-NEXT:    ldr x8, [x8, :lo12:.refptr.weakfunc]24; FISEL-NEXT:    cbz x8, .LBB0_225; FISEL-NEXT:  // %bb.1:26; FISEL-NEXT:    adrp x8, .refptr.weakfunc27; FISEL-NEXT:    ldr x8, [x8, :lo12:.refptr.weakfunc]28; FISEL-NEXT:    blr x829; FISEL-NEXT:  .LBB0_2:30; FISEL-NEXT:    ldr x30, [sp], #16 // 8-byte Folded Reload31; FISEL-NEXT:    ret32  %cmp = icmp ne ptr @weakfunc, null33  br i1 %cmp, label %1, label %234 351:36  call void @weakfunc()37  br label %238 392:40  ret void41}42 43declare extern_weak void @weakfunc()44