| # REQUIRES: x86 |
| # RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t.o |
| # RUN: echo "SECTIONS { foo = ABSOLUTE(.) + 1; };" > %t.script |
| # RUN: ld.lld -o %t --script %t.script %t.o |
| # RUN: llvm-readobj --symbols %t | FileCheck %s |
| |
| # RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t.o |
| # RUN: echo "PROVIDE(foo = 1 + ABSOLUTE(ADDR(.text)));" > %t.script |
| # RUN: ld.lld -o %t --script %t.script %t.o |
| # RUN: llvm-readobj --symbols %t | FileCheck --check-prefix=CHECK-RHS %s |
| |
| # CHECK: Name: foo |
| # CHECK-NEXT: Value: |
| # CHECK-NEXT: Size: |
| # CHECK-NEXT: Binding: |
| # CHECK-NEXT: Type: |
| # CHECK-NEXT: Other: |
| # CHECK-NEXT: Section: Absolute |
| # CHECK-NEXT: } |
| |
| # CHECK-RHS: Name: foo |
| # CHECK-RHS-NEXT: Value: 0x201001 |
| # CHECK-RHS-NEXT: Size: |
| # CHECK-RHS-NEXT: Binding: |
| # CHECK-RHS-NEXT: Type: |
| # CHECK-RHS-NEXT: Other: |
| # CHECK-RHS-NEXT: Section: Absolute |
| # CHECK-RHS-NEXT: } |
| |
| .text |
| .globl _start |
| _start: |
| nop |
| |
| .global foo |