| $ cat be-flipping-v3.s |
| .text |
| .type bar, @function |
| bar: |
| .cfi_sections |
| .cfi_startproc |
| ldgr %f0,%r14 |
| .cfi_register 14, 16 |
| ldgr %f2,%r11 |
| .cfi_register 11, 17 |
| la %r11,0 |
| la %r14,0 |
| .Lreturn: |
| lgdr %r11,%f2 |
| .cfi_restore 11 |
| lgdr %r14,%f0 |
| .cfi_restore 14 |
| br %r14 |
| .cfi_endproc |
| .size bar,.-bar |
| |
| .globl _start |
| .type _start, @function |
| _start: |
| brasl %r14,bar@PLT |
| .size _start,.-_start |
| |
| $ s390x-ibm-linux-gnu-as --gsframe-3 -o be-flipping-v3.o be-flipping-v3.s |
| |
| Although running ld is not strictly necessary for the current set of tests, it |
| is being done in case future testing desires invoking sframe_find_fre (). |
| SFrame FDE lookup APIs in libsframe currently implement binary search of index |
| entires (and check for SFRAME_F_FDE_SORTED). |
| |
| $ s390x-ibm-linux-gnu-ld be-flipping-v3.o -o be-flipping-v3 |
| $ s390x-ibm-linux-gnu-objdump --sframe be-flipping-v3 |
| |
| be-flipping-v3: file format elf64-s390 |
| |
| Contents of the SFrame section .sframe: |
| Header : |
| |
| Version: SFRAME_VERSION_3 |
| Flags: SFRAME_F_FDE_SORTED, |
| SFRAME_F_FDE_FUNC_START_PCREL |
| Num FDEs: 1 |
| Num FREs: 5 |
| |
| Function Index : |
| |
| func idx [0]: pc = 0x10000b0, size = 26 bytes, attr = "F" |
| STARTPC CFA FP RA |
| 00000000010000b0 sp+160 u u |
| 00000000010000b4 sp+160 u r16+0 |
| 00000000010000b8 sp+160 r17+0 r16+0 |
| 00000000010000c4 sp+160 u r16+0 |
| 00000000010000c8 sp+160 u u |
| $ s390x-ibm-linux-gnu-objcopy --dump-section .sframe=DATA-BE-V3 be-flipping-v3 |