Jan Voung | b17f61d | 2014-08-28 16:00:53 -0700 | [diff] [blame] | 1 | ; Test that functions are aligned to the NaCl bundle alignment. |
| 2 | ; We could be smarter and only do this for indirect call targets |
| 3 | ; but typically you want to align functions anyway. |
| 4 | ; Also, we are currently using hlts for non-executable padding. |
| 5 | |
Jim Stichnoth | 729dbd0 | 2015-02-25 14:48:43 -0800 | [diff] [blame] | 6 | ; RUN: %p2i --filetype=obj --disassemble -i %s --args -O2 | FileCheck %s |
Jan Voung | 2971997 | 2015-05-19 11:24:51 -0700 | [diff] [blame] | 7 | |
Jan Voung | b2d5084 | 2015-05-12 09:53:50 -0700 | [diff] [blame] | 8 | ; TODO(jvoung): Stop skipping unimplemented parts (via --skip-unimplemented) |
| 9 | ; once enough infrastructure is in. Also, switch to --filetype=obj |
| 10 | ; when possible. |
Jim Stichnoth | c879968 | 2015-06-22 13:04:10 -0700 | [diff] [blame] | 11 | ; RUN: %if --need=target_ARM32 --need=allow_dump \ |
| 12 | ; RUN: --command %p2i --filetype=asm --assemble \ |
Jan Voung | b2d5084 | 2015-05-12 09:53:50 -0700 | [diff] [blame] | 13 | ; RUN: --disassemble --target arm32 -i %s --args -O2 --skip-unimplemented \ |
Jim Stichnoth | c879968 | 2015-06-22 13:04:10 -0700 | [diff] [blame] | 14 | ; RUN: | %if --need=target_ARM32 --need=allow_dump \ |
| 15 | ; RUN: --command FileCheck --check-prefix ARM32 %s |
Jan Voung | b17f61d | 2014-08-28 16:00:53 -0700 | [diff] [blame] | 16 | |
| 17 | define void @foo() { |
| 18 | ret void |
| 19 | } |
| 20 | ; CHECK-LABEL: foo |
| 21 | ; CHECK-NEXT: 0: {{.*}} ret |
| 22 | ; CHECK-NEXT: 1: {{.*}} hlt |
Jan Voung | b2d5084 | 2015-05-12 09:53:50 -0700 | [diff] [blame] | 23 | ; ARM32-LABEL: foo |
| 24 | ; ARM32-NEXT: 0: {{.*}} bx lr |
| 25 | ; ARM32-NEXT: 4: e7fedef0 udf |
| 26 | ; ARM32-NEXT: 8: e7fedef0 udf |
| 27 | ; ARM32-NEXT: c: e7fedef0 udf |
Jan Voung | b17f61d | 2014-08-28 16:00:53 -0700 | [diff] [blame] | 28 | |
| 29 | define void @bar() { |
| 30 | ret void |
| 31 | } |
| 32 | ; CHECK-LABEL: bar |
| 33 | ; CHECK-NEXT: 20: {{.*}} ret |
Jan Voung | b2d5084 | 2015-05-12 09:53:50 -0700 | [diff] [blame] | 34 | ; ARM32-LABEL: bar |
| 35 | ; ARM32-NEXT: 10: {{.*}} bx lr |