brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.2 KiB · 86555a7 Raw
61 lines · plain
1; RUN: llc < %s -mtriple=aarch64-windows -aarch64-min-jump-table-entries=4 | FileCheck %s2 3define dso_local i32 @func(i32 %in) "sign-return-address"="non-leaf" "sign-return-address-key"="a_key" "branch-target-enforcement" {4entry:5  call void asm sideeffect "", "~{x19}"()6  switch i32 %in, label %def [7    i32 0, label %lbl18    i32 1, label %lbl29    i32 2, label %lbl310    i32 4, label %lbl411  ]12 13def:14  ret i32 015 16lbl1:17  call void asm sideeffect "", ""()18  ret i32 119 20lbl2:21  ret i32 222 23lbl3:24  ret i32 425 26lbl4:27  ret i32 828}29 30; CHECK-LABEL: func:31; CHECK-NEXT: .seh_proc func32; CHECK:     // %bb.0: // %entry33; CHECK-NEXT: hint #3434; CHECK-NEXT: .seh_nop35; CHECK-NEXT: str x19, [sp, #-16]!36; CHECK-NEXT: .seh_save_reg_x x19, 1637; CHECK-NEXT: .seh_endprologue38 39; CHECK:      .LBB0_2:40; CHECK-NEXT: hint #3641; CHECK: mov w0, #142 43; CHECK:      .LBB0_3:44; CHECK-NEXT: hint #3645; CHECK-NEXT: mov w0, #446 47; CHECK:      .LBB0_4:48; CHECK-NEXT: hint #3649; CHECK-NEXT: mov w0, #250 51; CHECK:      .LBB0_5:52; CHECK-NEXT: hint #3653; CHECK-NEXT: mov w0, #854 55; CHECK:      .seh_startepilogue56; CHECK-NEXT: ldr x19, [sp], #1657; CHECK-NEXT: .seh_save_reg_x x19, 1658; CHECK-NEXT: .seh_endepilogue59; CHECK-NEXT: ret60; CHECK-NEXT: .seh_endfunclet61