summaryrefslogtreecommitdiff
path: root/current/sources/cxx-stl/llvm-libc++abi/test/native/arm-linux-eabi/ttype-encoding-90.pass.sh.s
diff options
context:
space:
mode:
authorandroid-build-team Robot <android-build-team-robot@google.com>2021-04-03 03:08:37 +0000
committerandroid-build-team Robot <android-build-team-robot@google.com>2021-04-03 03:08:37 +0000
commit5a9f7a5fe1d032b108573643d45998662c535d69 (patch)
tree538f2862490075cda112e6e17786a116eed28768 /current/sources/cxx-stl/llvm-libc++abi/test/native/arm-linux-eabi/ttype-encoding-90.pass.sh.s
parent3e57e9ac4ee653989a82a45ce6f24b5fef92d975 (diff)
parentfa91e13f76f3f4f269e0c9bbb2c90d1f089d62f2 (diff)
downloadndk-5a9f7a5fe1d032b108573643d45998662c535d69.tar.gz
Snap for 7256110 from fa91e13f76f3f4f269e0c9bbb2c90d1f089d62f2 to sc-releaseandroid-vts-12.0_r9android-vts-12.0_r8android-vts-12.0_r7android-vts-12.0_r6android-vts-12.0_r5android-vts-12.0_r4android-vts-12.0_r3android-vts-12.0_r2android-vts-12.0_r12android-vts-12.0_r11android-vts-12.0_r10android-vts-12.0_r1android-security-12.0.0_r60android-security-12.0.0_r59android-security-12.0.0_r58android-security-12.0.0_r57android-security-12.0.0_r56android-security-12.0.0_r55android-security-12.0.0_r54android-security-12.0.0_r53android-security-12.0.0_r52android-security-12.0.0_r51android-security-12.0.0_r50android-security-12.0.0_r49android-security-12.0.0_r48android-security-12.0.0_r47android-security-12.0.0_r46android-security-12.0.0_r45android-security-12.0.0_r44android-security-12.0.0_r43android-security-12.0.0_r42android-security-12.0.0_r41android-security-12.0.0_r40android-security-12.0.0_r39android-security-12.0.0_r38android-security-12.0.0_r37android-security-12.0.0_r36android-security-12.0.0_r35android-security-12.0.0_r34android-platform-12.0.0_r9android-platform-12.0.0_r8android-platform-12.0.0_r7android-platform-12.0.0_r6android-platform-12.0.0_r5android-platform-12.0.0_r4android-platform-12.0.0_r32android-platform-12.0.0_r31android-platform-12.0.0_r30android-platform-12.0.0_r3android-platform-12.0.0_r29android-platform-12.0.0_r28android-platform-12.0.0_r27android-platform-12.0.0_r26android-platform-12.0.0_r25android-platform-12.0.0_r24android-platform-12.0.0_r23android-platform-12.0.0_r22android-platform-12.0.0_r21android-platform-12.0.0_r20android-platform-12.0.0_r2android-platform-12.0.0_r19android-platform-12.0.0_r18android-platform-12.0.0_r17android-platform-12.0.0_r16android-platform-12.0.0_r15android-platform-12.0.0_r14android-platform-12.0.0_r13android-platform-12.0.0_r12android-platform-12.0.0_r11android-platform-12.0.0_r10android-platform-12.0.0_r1android-cts-12.0_r9android-cts-12.0_r8android-cts-12.0_r7android-cts-12.0_r6android-cts-12.0_r5android-cts-12.0_r4android-cts-12.0_r3android-cts-12.0_r2android-cts-12.0_r12android-cts-12.0_r11android-cts-12.0_r10android-cts-12.0_r1android-12.0.0_r9android-12.0.0_r8android-12.0.0_r34android-12.0.0_r33android-12.0.0_r31android-12.0.0_r30android-12.0.0_r3android-12.0.0_r25android-12.0.0_r2android-12.0.0_r11android-12.0.0_r10android-12.0.0_r1android12-tests-releaseandroid12-security-releaseandroid12-s5-releaseandroid12-s4-releaseandroid12-s3-releaseandroid12-s2-releaseandroid12-s1-releaseandroid12-releaseandroid12-platform-releaseandroid12-gsi
Change-Id: I99f5295076a3be68c535df4df151557087d1ee3f
Diffstat (limited to 'current/sources/cxx-stl/llvm-libc++abi/test/native/arm-linux-eabi/ttype-encoding-90.pass.sh.s')
-rw-r--r--current/sources/cxx-stl/llvm-libc++abi/test/native/arm-linux-eabi/ttype-encoding-90.pass.sh.s97
1 files changed, 97 insertions, 0 deletions
diff --git a/current/sources/cxx-stl/llvm-libc++abi/test/native/arm-linux-eabi/ttype-encoding-90.pass.sh.s b/current/sources/cxx-stl/llvm-libc++abi/test/native/arm-linux-eabi/ttype-encoding-90.pass.sh.s
new file mode 100644
index 000000000..0d8bdee9b
--- /dev/null
+++ b/current/sources/cxx-stl/llvm-libc++abi/test/native/arm-linux-eabi/ttype-encoding-90.pass.sh.s
@@ -0,0 +1,97 @@
+@ RUN: %{cxx} %{flags} %{link_flags} %s -o %t.exe
+@ RUN: %t.exe
+@ UNSUPPORTED: no-exceptions
+
+@ PURPOSE: Check that 0x90 is a valid value for ttype encoding.
+
+@ NOTE:
+@
+@ This file is generated from the following C++ source code and then change the
+@ `TType Encoding` to 0x90.
+@
+@ ```
+@ int main() {
+@ try {
+@ throw 5;
+@ } catch (int i) {
+@ if (i != 5)
+@ abort();
+@ return 0;
+@ }
+@ }
+@ ```
+
+ .syntax unified
+
+ .text
+ .globl main
+ .p2align 2
+ .type main,%function
+main: @ @main
+.Lfunc_begin0:
+ .fnstart
+@ BB#0: @ %entry
+ .save {r11, lr}
+ push {r11, lr}
+ .setfp r11, sp
+ mov r11, sp
+ mov r0, #4
+ bl __cxa_allocate_exception
+ mov r1, #5
+ str r1, [r0]
+.Ltmp0:
+ ldr r1, .LCPI0_0
+ mov r2, #0
+ bl __cxa_throw
+.Ltmp1:
+
+@ BB#2: @ %lpad
+.Ltmp2:
+ bl __cxa_begin_catch
+ ldr r0, [r0]
+ cmp r0, #5
+ bne .LBB0_4
+@ BB#3: @ %if.end
+ bl __cxa_end_catch
+ mov r0, #0
+ pop {r11, lr}
+ bx lr
+.LBB0_4: @ %if.then
+ bl abort
+ .p2align 2
+@ BB#5:
+.LCPI0_0:
+ .long _ZTIi
+.Lfunc_end0:
+
+ .size main, .Lfunc_end0-main
+ .globl __gxx_personality_v0
+ .personality __gxx_personality_v0
+ .handlerdata
+ .p2align 2
+GCC_except_table0:
+.Lexception0:
+ .byte 255 @ @LPStart Encoding = omit
+ .byte 0x90 @ @TType Encoding = indirect | pcrel
+ .asciz "\257\200" @ @TType base offset
+ .byte 3 @ Call site Encoding = udata4
+ .byte 39 @ Call site table length
+ .long .Lfunc_begin0-.Lfunc_begin0 @ >> Call Site 1 <<
+ .long .Ltmp0-.Lfunc_begin0 @ Call between .Lfunc_begin0 and .Ltmp0
+ .long 0 @ has no landing pad
+ .byte 0 @ On action: cleanup
+ .long .Ltmp0-.Lfunc_begin0 @ >> Call Site 2 <<
+ .long .Ltmp1-.Ltmp0 @ Call between .Ltmp0 and .Ltmp1
+ .long .Ltmp2-.Lfunc_begin0 @ jumps to .Ltmp2
+ .byte 1 @ On action: 1
+ .long .Ltmp1-.Lfunc_begin0 @ >> Call Site 3 <<
+ .long .Lfunc_end0-.Ltmp1 @ Call between .Ltmp1 and .Lfunc_end0
+ .long 0 @ has no landing pad
+ .byte 0 @ On action: cleanup
+ .byte 1 @ >> Action Record 1 <<
+ @ Catch TypeInfo 1
+ .byte 0 @ No further actions
+ @ >> Catch TypeInfos <<
+ .long _ZTIi(target2) @ TypeInfo 1
+ .p2align 2
+ .fnend