~pali/+junk/llvm-toolchain-3.7

« back to all changes in this revision

Viewing changes to test/MC/ARM/eh-compact-pr0.s

  • Committer: Package Import Robot
  • Author(s): Sylvestre Ledru
  • Date: 2015-07-15 17:51:08 UTC
  • Revision ID: package-import@ubuntu.com-20150715175108-l8mynwovkx4zx697
Tags: upstream-3.7~+rc2
ImportĀ upstreamĀ versionĀ 3.7~+rc2

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
@ RUN: llvm-mc %s -triple=armv7-unknown-linux-gnueabi -filetype=obj -o - \
 
2
@ RUN:   | llvm-readobj -s -sd -sr > %t
 
3
@ RUN: FileCheck %s < %t
 
4
@ RUN: FileCheck --check-prefix=RELOC %s < %t
 
5
 
 
6
@ Check the compact pr0 model
 
7
 
 
8
        .syntax unified
 
9
 
 
10
        .section        .TEST1
 
11
        .globl  func1
 
12
        .align  2
 
13
        .type   func1,%function
 
14
func1:
 
15
        .fnstart
 
16
        .save   {r11, lr}
 
17
        push    {r11, lr}
 
18
        .setfp  r11, sp
 
19
        mov     r11, sp
 
20
        pop     {r11, lr}
 
21
        mov     pc, lr
 
22
        .fnend
 
23
 
 
24
        .section        .TEST2
 
25
        .globl  func2
 
26
        .align  2
 
27
        .type   func2,%function
 
28
func2:
 
29
        .fnstart
 
30
        .save   {r11, lr}
 
31
        push    {r11, lr}
 
32
        pop     {r11, pc}
 
33
        .fnend
 
34
 
 
35
 
 
36
 
 
37
@-------------------------------------------------------------------------------
 
38
@ Check .TEST1 section
 
39
@-------------------------------------------------------------------------------
 
40
@ CHECK: Sections [
 
41
@ CHECK:   Section {
 
42
@ CHECK:     Name: .TEST1
 
43
@ CHECK:     SectionData (
 
44
@ CHECK:       0000: 00482DE9 0DB0A0E1 0048BDE8 0EF0A0E1  |.H-......H......|
 
45
@ CHECK:     )
 
46
@ CHECK:   }
 
47
 
 
48
 
 
49
@-------------------------------------------------------------------------------
 
50
@ Check .ARM.exidx.TEST1 section
 
51
@-------------------------------------------------------------------------------
 
52
@ CHECK:   Section {
 
53
@ CHECK:     Name: .ARM.exidx.TEST1
 
54
@-------------------------------------------------------------------------------
 
55
@ 0x80   = Compact model 0, personality routine: __aeabi_unwind_cpp_pr0
 
56
@ 0x9B   = $sp can be found in $r11
 
57
@ 0x8480 = pop {r11, r14}
 
58
@-------------------------------------------------------------------------------
 
59
@ CHECK:     SectionData (
 
60
@ CHECK:       0000: 00000000 80849B80                    |........|
 
61
@ CHECK:     )
 
62
@ CHECK:   }
 
63
@-------------------------------------------------------------------------------
 
64
@ The first word should be relocated to .TEST1 section.  Besides, there is
 
65
@ another relocation entry for __aeabi_unwind_cpp_pr0, so that the linker
 
66
@ will keep __aeabi_unwind_cpp_pr0.
 
67
@-------------------------------------------------------------------------------
 
68
@ RELOC:   Section {
 
69
@ RELOC:     Name: .rel.ARM.exidx.TEST1
 
70
@ RELOC:     Relocations [
 
71
@ RELOC:       0x0 R_ARM_PREL31 .TEST1 0x0
 
72
@ RELOC:       0x0 R_ARM_NONE __aeabi_unwind_cpp_pr0 0x0
 
73
@ RELOC:     ]
 
74
@ RELOC:   }
 
75
 
 
76
 
 
77
@-------------------------------------------------------------------------------
 
78
@ Check .TEST2 section
 
79
@-------------------------------------------------------------------------------
 
80
@ CHECK:   Section {
 
81
@ CHECK:     Name: .TEST2
 
82
@ CHECK:     SectionData (
 
83
@ CHECK:       0000: 00482DE9 0088BDE8                    |.H-.....|
 
84
@ CHECK:     )
 
85
@ CHECK:   }
 
86
@-------------------------------------------------------------------------------
 
87
@ Check .ARM.exidx.TEST1 section
 
88
@-------------------------------------------------------------------------------
 
89
@ CHECK:   Section {
 
90
@ CHECK:     Name: .ARM.exidx.TEST2
 
91
@-------------------------------------------------------------------------------
 
92
@ 0x80   = Compact model 0, personality routine: __aeabi_unwind_cpp_pr0
 
93
@ 0x8480 = pop {r11, r14}
 
94
@ 0xB0   = finish
 
95
@-------------------------------------------------------------------------------
 
96
@ CHECK:     SectionData (
 
97
@ CHECK:       0000: 00000000 B0808480                    |........|
 
98
@ CHECK:     )
 
99
@ CHECK:   }
 
100
@-------------------------------------------------------------------------------
 
101
@ The first word should be relocated to .TEST2 section.  Besides, there is
 
102
@ another relocation entry for __aeabi_unwind_cpp_pr0, so that the linker
 
103
@ will keep __aeabi_unwind_cpp_pr0.
 
104
@-------------------------------------------------------------------------------
 
105
@ RELOC:   Section {
 
106
@ RELOC:     Name: .rel.ARM.exidx.TEST2
 
107
@ RELOC:     Relocations [
 
108
@ RELOC:       0x0 R_ARM_PREL31 .TEST2 0x0
 
109
@ RELOC:       0x0 R_ARM_NONE __aeabi_unwind_cpp_pr0 0x0
 
110
@ RELOC:     ]
 
111
@ RELOC:   }