Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(376)

Side by Side Diff: tests_lit/llvm2ice_tests/function_aligned.ll

Issue 1136793002: Handle ARM "ret void" and function alignment with proper padding. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: note moved to cpp Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/assembler_ia32.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 ; Test that functions are aligned to the NaCl bundle alignment. 1 ; Test that functions are aligned to the NaCl bundle alignment.
2 ; We could be smarter and only do this for indirect call targets 2 ; We could be smarter and only do this for indirect call targets
3 ; but typically you want to align functions anyway. 3 ; but typically you want to align functions anyway.
4 ; Also, we are currently using hlts for non-executable padding. 4 ; Also, we are currently using hlts for non-executable padding.
5 5
6 ; RUN: %p2i --filetype=obj --disassemble -i %s --args -O2 | FileCheck %s 6 ; RUN: %p2i --filetype=obj --disassemble -i %s --args -O2 | FileCheck %s
7 ; TODO(jvoung): Stop skipping unimplemented parts (via --skip-unimplemented)
8 ; once enough infrastructure is in. Also, switch to --filetype=obj
9 ; when possible.
10 ; RUN: %if --need=target_ARM32 --command %p2i --filetype=asm --assemble \
11 ; RUN: --disassemble --target arm32 -i %s --args -O2 --skip-unimplemented \
12 ; RUN: | %if --need=target_ARM32 --command FileCheck --check-prefix ARM32 %s
7 13
8 define void @foo() { 14 define void @foo() {
9 ret void 15 ret void
10 } 16 }
11 ; CHECK-LABEL: foo 17 ; CHECK-LABEL: foo
12 ; CHECK-NEXT: 0: {{.*}} ret 18 ; CHECK-NEXT: 0: {{.*}} ret
13 ; CHECK-NEXT: 1: {{.*}} hlt 19 ; CHECK-NEXT: 1: {{.*}} hlt
20 ; ARM32-LABEL: foo
21 ; ARM32-NEXT: 0: {{.*}} bx lr
22 ; ARM32-NEXT: 4: e7fedef0 udf
23 ; ARM32-NEXT: 8: e7fedef0 udf
24 ; ARM32-NEXT: c: e7fedef0 udf
14 25
15 define void @bar() { 26 define void @bar() {
16 ret void 27 ret void
17 } 28 }
18 ; CHECK-LABEL: bar 29 ; CHECK-LABEL: bar
19 ; CHECK-NEXT: 20: {{.*}} ret 30 ; CHECK-NEXT: 20: {{.*}} ret
31 ; ARM32-LABEL: bar
32 ; ARM32-NEXT: 10: {{.*}} bx lr
OLDNEW
« no previous file with comments | « src/assembler_ia32.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698