File: aarch32-relocations.yaml

package info (click to toggle)
swiftlang 6.0.3-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 2,519,992 kB
  • sloc: cpp: 9,107,863; ansic: 2,040,022; asm: 1,135,751; python: 296,500; objc: 82,456; f90: 60,502; lisp: 34,951; pascal: 19,946; sh: 18,133; perl: 7,482; ml: 4,937; javascript: 4,117; makefile: 3,840; awk: 3,535; xml: 914; fortran: 619; cs: 573; ruby: 573
file content (62 lines) | stat: -rw-r--r-- 2,066 bytes parent folder | download | duplicates (10)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
# RUN: yaml2obj %s -o %t
# RUN: lldb-test object-file -contents %t | FileCheck %s

## Test that R_ARM_ABS32 relocations are resolved in .debug_info sections on aarch32.
## REL-type relocations store implicit addend as signed values inline.
## We relocate the symbol foo with 4 different addends and bar once in the .debug_info section.
## Results that exceed the 32-bit range or overflow are logged and ignored.

# CHECK:      Name: .debug_info
# CHECK:      Data:  (
#
#              Addends: Zero     Positive Negative Overflow Out-of-range
#                       00000000 04030201 D6FFFFFF D5FFFFFF FFFFFF7F
# CHECK-NEXT:     0000: 2A000000 2E030201 00000000 D5FFFFFF FFFFFF7F
# CHECK-NEXT: )

--- !ELF
FileHeader:
  Class:           ELFCLASS32
  Data:            ELFDATA2LSB
  Type:            ET_REL
  Machine:         EM_ARM
  Flags:           [ EF_ARM_EABI_VER5 ]
Sections:
  - Name:            .text
    Type:            SHT_PROGBITS
    Flags:           [ SHF_ALLOC, SHF_EXECINSTR ]
  - Name:            .debug_info
    Type:            SHT_PROGBITS
    Content:         0000000004030201D6FFFFFFD5FFFFFFFFFFFF7F
  - Name:            .rel.debug_info
    Type:            SHT_REL
    Info:            .debug_info
    Relocations:
      - Offset:          0x0
        Symbol:          foo
        Type:            R_ARM_ABS32
      - Offset:          0x4
        Symbol:          foo
        Type:            R_ARM_ABS32
      - Offset:          0x8
        Symbol:          foo
        Type:            R_ARM_ABS32
      - Offset:          0xC
        Symbol:          foo
        Type:            R_ARM_ABS32
      - Offset:          0x10
        Symbol:          bar
        Type:            R_ARM_ABS32
Symbols:
  - Name:            .debug_info
    Type:            STT_SECTION
    Section:         .debug_info
  - Name:            foo
    Type:            STT_FUNC
    Section:         .debug_info
    Value:           0x0000002A
  - Name:            bar
    Type:            STT_FUNC
    Section:         .debug_info
    Value:           0xFF000000
...