Revert "[lldb][test] Remove compiler version check and use regex" (#124101)
[llvm-project.git] / libcxxabi / test / native / arm-linux-eabi / ttype-encoding-00.pass.sh.s
blobf8a80e8e1824db0384d46bd670074775ab74d443
1 @ RUN: %{cxx} %{flags} %{link_flags} %s -o %t.exe
2 @ RUN: %t.exe
3 @ UNSUPPORTED: no-exceptions
5 @ PURPOSE: Check that 0x00 is a valid value for ttype encoding. LLVM and
6 @ GCC 4.6 are generating 0x00 as ttype encoding. libc++abi should provide
7 @ legacy support.
9 @ NOTE:
11 @ This file is generated from the following C++ source code:
13 @ ```
14 @ int main() {
15 @ try {
16 @ throw 5;
17 @ } catch (int i) {
18 @ if (i != 5)
19 @ abort();
20 @ return 0;
21 @ }
22 @ }
23 @ ```
25 .syntax unified
27 .text
28 .globl main
29 .p2align 2
30 .type main,%function
31 main: @ @main
32 .Lfunc_begin0:
33 .fnstart
34 @ BB#0: @ %entry
35 .save {r11, lr}
36 push {r11, lr}
37 .setfp r11, sp
38 mov r11, sp
39 mov r0, #4
40 bl __cxa_allocate_exception
41 mov r1, #5
42 str r1, [r0]
43 .Ltmp0:
44 ldr r1, .LCPI0_0
45 mov r2, #0
46 bl __cxa_throw
47 .Ltmp1:
49 @ BB#2: @ %lpad
50 .Ltmp2:
51 bl __cxa_begin_catch
52 ldr r0, [r0]
53 cmp r0, #5
54 bne .LBB0_4
55 @ BB#3: @ %if.end
56 bl __cxa_end_catch
57 mov r0, #0
58 pop {r11, lr}
59 bx lr
60 .LBB0_4: @ %if.then
61 bl abort
62 .p2align 2
63 @ BB#5:
64 .LCPI0_0:
65 .long _ZTIi
66 .Lfunc_end0:
68 .size main, .Lfunc_end0-main
69 .globl __gxx_personality_v0
70 .personality __gxx_personality_v0
71 .handlerdata
72 .p2align 2
73 GCC_except_table0:
74 .Lexception0:
75 .byte 255 @ @LPStart Encoding = omit
76 .byte 0 @ @TType Encoding = absptr
77 .asciz "\257\200" @ @TType base offset
78 .byte 3 @ Call site Encoding = udata4
79 .byte 39 @ Call site table length
80 .long .Lfunc_begin0-.Lfunc_begin0 @ >> Call Site 1 <<
81 .long .Ltmp0-.Lfunc_begin0 @ Call between .Lfunc_begin0 and .Ltmp0
82 .long 0 @ has no landing pad
83 .byte 0 @ On action: cleanup
84 .long .Ltmp0-.Lfunc_begin0 @ >> Call Site 2 <<
85 .long .Ltmp1-.Ltmp0 @ Call between .Ltmp0 and .Ltmp1
86 .long .Ltmp2-.Lfunc_begin0 @ jumps to .Ltmp2
87 .byte 1 @ On action: 1
88 .long .Ltmp1-.Lfunc_begin0 @ >> Call Site 3 <<
89 .long .Lfunc_end0-.Ltmp1 @ Call between .Ltmp1 and .Lfunc_end0
90 .long 0 @ has no landing pad
91 .byte 0 @ On action: cleanup
92 .byte 1 @ >> Action Record 1 <<
93 @ Catch TypeInfo 1
94 .byte 0 @ No further actions
95 @ >> Catch TypeInfos <<
96 .long _ZTIi(target2) @ TypeInfo 1
97 .p2align 2
98 .fnend