| # RUN: lld-core %s -stubs_pass | FileCheck %s |
| |
| # |
| # Test that stubs pass adds stubs and rebinds call sites to the stub |
| # |
| |
| --- |
| atoms: |
| - name: foo |
| type: code |
| content: [ E8, 00, 00, 00, 00, E8, 00, 00, 00, |
| 00, 48 ,8B, 05, 00, 00, 00, 00 ] |
| fixups: |
| - offset: 1 |
| kind: call32 |
| target: malloc |
| - offset: 6 |
| kind: call32 |
| target: free |
| - offset: 13 |
| kind: gotLoad32 |
| target: malloc |
| |
| - name: malloc |
| definition: shared-library |
| load-name: libc.so |
| |
| - name: free |
| definition: shared-library |
| load-name: libc.so |
| |
| ... |
| |
| # CHECK: name: foo |
| # CHECK: fixups: |
| # CHECK: kind: call32 |
| # CHECK: target: L |
| # CHECK: kind: call32 |
| # CHECK: target: L |
| # CHECK: kind: gotLoad32 |
| # CHECK: target: malloc |
| # CHECK: name: L |
| # CHECK: type: stub |
| # CHECK: name: L |
| # CHECK: type: stub |
| # CHECK: name: malloc |
| # CHECK: definition: shared-library |
| # CHECK: name: free |
| # CHECK: definition: shared-library |
| # CHECK: ... |