Home | History | Annotate | Download | only in tests
      1 #! /bin/sh
      2 # Copyright (C) 2012, 2013, 2014 Red Hat, Inc.
      3 # Copyright (C) H.J. Lu <hjl.tools (at] gmail.com>, 2015.
      4 # This file is part of elfutils.
      5 #
      6 # This file is free software; you can redistribute it and/or modify
      7 # it under the terms of the GNU General Public License as published by
      8 # the Free Software Foundation; either version 3 of the License, or
      9 # (at your option) any later version.
     10 #
     11 # elfutils is distributed in the hope that it will be useful, but
     12 # WITHOUT ANY WARRANTY; without even the implied warranty of
     13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     14 # GNU General Public License for more details.
     15 #
     16 # You should have received a copy of the GNU General Public License
     17 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
     18 
     19 . $srcdir/test-subr.sh
     20 
     21 testfiles testfile63
     22 
     23 testrun_compare ${abs_top_builddir}/src/readelf -n testfile63 <<\EOF
     24 
     25 Note segment of 892 bytes at offset 0x274:
     26   Owner          Data size  Type
     27   CORE                 148  PRSTATUS
     28     info.si_signo: 11, info.si_code: 0, info.si_errno: 0, cursig: 11
     29     sigpend: <>
     30     sighold: <>
     31     pid: 11087, ppid: 11063, pgrp: 11087, sid: 11063
     32     utime: 0.000000, stime: 0.010000, cutime: 0.000000, cstime: 0.000000
     33     orig_r0: -1, fpvalid: 1
     34     r0:             1  r1:   -1091672508  r2:   -1091672500
     35     r3:             0  r4:             0  r5:             0
     36     r6:         33728  r7:             0  r8:             0
     37     r9:             0  r10:  -1225703496  r11:  -1091672844
     38     r12:            0  sp:    0xbeee64f4  lr:    0xb6dc3f48
     39     pc:    0x00008500  spsr:  0x60000010
     40   CORE                 124  PRPSINFO
     41     state: 0, sname: R, zomb: 0, nice: 0, flag: 0x00400500
     42     uid: 0, gid: 0, pid: 11087, ppid: 11063, pgrp: 11087, sid: 11063
     43     fname: a.out, psargs: ./a.out 
     44   CORE                 144  AUXV
     45     HWCAP: 0xe8d7  <swp half thumb fast-mult vfp edsp>
     46     PAGESZ: 4096
     47     CLKTCK: 100
     48     PHDR: 0x8034
     49     PHENT: 32
     50     PHNUM: 8
     51     BASE: 0xb6eee000
     52     FLAGS: 0
     53     ENTRY: 0x83c0
     54     UID: 0
     55     EUID: 0
     56     GID: 0
     57     EGID: 0
     58     SECURE: 0
     59     RANDOM: 0xbeee674e
     60     EXECFN: 0xbeee6ff4
     61     PLATFORM: 0xbeee675e
     62     NULL
     63   CORE                 116  FPREGSET
     64     f0: 0x000000000000000000000000  f1: 0x000000000000000000000000
     65     f2: 0x000000000000000000000000  f3: 0x000000000000000000000000
     66     f4: 0x000000000000000000000000  f5: 0x000000000000000000000000
     67     f6: 0x000000000000000000000000  f7: 0x000000000000000000000000
     68   LINUX                260  ARM_VFP
     69     fpscr: 0x00000000
     70     d0:  0x0000000000000000  d1:  0x0000000000000000
     71     d2:  0x0000000000000000  d3:  0x0000000000000000
     72     d4:  0x0000000000000000  d5:  0x0000000000000000
     73     d6:  0x0000000000000000  d7:  0x0000000000000000
     74     d8:  0x0000000000000000  d9:  0x0000000000000000
     75     d10: 0x0000000000000000  d11: 0x0000000000000000
     76     d12: 0x0000000000000000  d13: 0x0000000000000000
     77     d14: 0x0000000000000000  d15: 0x0000000000000000
     78     d16: 0x0000000000000000  d17: 0x0000000000000000
     79     d18: 0x0000000000000000  d19: 0x0000000000000000
     80     d20: 0x0000000000000000  d21: 0x0000000000000000
     81     d22: 0x0000000000000000  d23: 0x0000000000000000
     82     d24: 0x0000000000000000  d25: 0x0000000000000000
     83     d26: 0x0000000000000000  d27: 0x0000000000000000
     84     d28: 0x0000000000000000  d29: 0x0000000000000000
     85     d30: 0x0000000000000000  d31: 0x0000000000000000
     86 EOF
     87 
     88 testfiles testfile67
     89 testrun_compare ${abs_top_builddir}/src/readelf -n testfile67 <<\EOF
     90 
     91 Note segment of 1044 bytes at offset 0xe8:
     92   Owner          Data size  Type
     93   CORE                 336  PRSTATUS
     94     info.si_signo: 4, info.si_code: 0, info.si_errno: 0, cursig: 4
     95     sigpend: <>
     96     sighold: <>
     97     pid: 805, ppid: 804, pgrp: 804, sid: 699
     98     utime: 0.000042, stime: 0.000103, cutime: 0.000000, cstime: 0.000000
     99     orig_r2: 2571552016, fpvalid: 1
    100     pswm:   0x0705c00180000000  pswa:   0x00000000800000d6
    101     r0:         4393751543808  r1:         4398002544388
    102     r2:                    11  r3:            2571578208
    103     r4:            2571702016  r5:         4398003235624
    104     r6:            2571580768  r7:            2571702016
    105     r8:            2571578208  r9:            2571552016
    106     r10:           2571552016  r11:                    0
    107     r12:        4398003499008  r13:           2148274656
    108     r14:                    0  r15:        4398040761216
    109     a0:   0x000003ff  a1:   0xfd54a6f0  a2:   0x00000000  a3:   0x00000000
    110     a4:   0x00000000  a5:   0x00000000  a6:   0x00000000  a7:   0x00000000
    111     a8:   0x00000000  a9:   0x00000000  a10:  0x00000000  a11:  0x00000000
    112     a12:  0x00000000  a13:  0x00000000  a14:  0x00000000  a15:  0x00000000
    113   CORE                 136  PRPSINFO
    114     state: 0, sname: R, zomb: 0, nice: 0, flag: 0x0000000000400400
    115     uid: 0, gid: 0, pid: 805, ppid: 804, pgrp: 804, sid: 699
    116     fname: 1, psargs: ./1 
    117   CORE                 304  AUXV
    118     SYSINFO_EHDR: 0
    119     HWCAP: 0x37f
    120     PAGESZ: 4096
    121     CLKTCK: 100
    122     PHDR: 0x80000040
    123     PHENT: 56
    124     PHNUM: 2
    125     BASE: 0
    126     FLAGS: 0
    127     ENTRY: 0x800000d4
    128     UID: 0
    129     EUID: 0
    130     GID: 0
    131     EGID: 0
    132     SECURE: 0
    133     RANDOM: 0x3ffffa8463c
    134     EXECFN: 0x3ffffa85ff4
    135     PLATFORM: 0x3ffffa8464c
    136     NULL
    137   CORE                 136  FPREGSET
    138     fpc: 0x00000000
    139     f0:  0x0000000000000040  f1:  0x4b00000000000000
    140     f2:  0x0000000000000041  f3:  0x3ad50b5555555600
    141     f4:  0x0000000000000000  f5:  0x0000000000000000
    142     f6:  0x0000000000000000  f7:  0x0000000000000000
    143     f8:  0x0000000000000000  f9:  0x0000000000000000
    144     f10: 0x0000000000000000  f11: 0x0000000000000000
    145     f12: 0x0000000000000000  f13: 0x0000000000000000
    146     f14: 0x0000000000000000  f15: 0x0000000000000000
    147   LINUX                  8  S390_LAST_BREAK
    148     last_break: 0x000003fffd75ccbe
    149   LINUX                  4  S390_SYSTEM_CALL
    150     system_call: 0
    151 EOF
    152 
    153 testfiles testfile68
    154 testrun_compare ${abs_top_builddir}/src/readelf -n testfile68 <<\EOF
    155 
    156 Note segment of 852 bytes at offset 0x94:
    157   Owner          Data size  Type
    158   CORE                 224  PRSTATUS
    159     info.si_signo: 4, info.si_code: 0, info.si_errno: 0, cursig: 4
    160     sigpend: <>
    161     sighold: <>
    162     pid: 839, ppid: 838, pgrp: 838, sid: 699
    163     utime: 0.000043, stime: 0.000102, cutime: 0.000000, cstime: 0.000000
    164     orig_r2: -1723388288, fpvalid: 1
    165     pswm:  0x070dc000  pswa:  0x8040009a
    166     r0:            0  r1:    -43966716  r2:           11  r3:  -1723238816
    167     r4:  -1723265280  r5:    -43275480  r6:  -1723245280  r7:  -1723265280
    168     r8:  -1723238816  r9:  -1723388288  r10: -1723388288  r11:           0
    169     r12:   -43012096  r13: -2146692640  r14:           0  r15:  2139883440
    170     a0:   0x000003ff  a1:   0xfd54a6f0  a2:   0x00000000  a3:   0x00000000
    171     a4:   0x00000000  a5:   0x00000000  a6:   0x00000000  a7:   0x00000000
    172     a8:   0x00000000  a9:   0x00000000  a10:  0x00000000  a11:  0x00000000
    173     a12:  0x00000000  a13:  0x00000000  a14:  0x00000000  a15:  0x00000000
    174   CORE                 124  PRPSINFO
    175     state: 0, sname: R, zomb: 0, nice: 0, flag: 0x00400400
    176     uid: 0, gid: 0, pid: 839, ppid: 838, pgrp: 838, sid: 699
    177     fname: 2, psargs: ./2 
    178   CORE                 152  AUXV
    179     SYSINFO_EHDR: 0
    180     HWCAP: 0x37f
    181     PAGESZ: 4096
    182     CLKTCK: 100
    183     PHDR: 0x400034
    184     PHENT: 32
    185     PHNUM: 2
    186     BASE: 0
    187     FLAGS: 0
    188     ENTRY: 0x400098
    189     UID: 0
    190     EUID: 0
    191     GID: 0
    192     EGID: 0
    193     SECURE: 0
    194     RANDOM: 0x7f8c090c
    195     EXECFN: 0x7f8c1ff4
    196     PLATFORM: 0x7f8c091c
    197     NULL
    198   CORE                 136  FPREGSET
    199     fpc: 0x00000000
    200     f0:  0x0000000000000040  f1:  0x4b00000000000000
    201     f2:  0x0000000000000041  f3:  0x3ad50b5555555600
    202     f4:  0x0000000000000000  f5:  0x0000000000000000
    203     f6:  0x0000000000000000  f7:  0x0000000000000000
    204     f8:  0x0000000000000000  f9:  0x0000000000000000
    205     f10: 0x0000000000000000  f11: 0x0000000000000000
    206     f12: 0x0000000000000000  f13: 0x0000000000000000
    207     f14: 0x0000000000000000  f15: 0x0000000000000000
    208   LINUX                  8  S390_LAST_BREAK
    209     last_break: 0xfd75ccbe
    210   LINUX                  4  S390_SYSTEM_CALL
    211     system_call: 0
    212   LINUX                 64  S390_HIGH_GPRS
    213     high_r0: 0x000003ff, high_r1: 0x000003ff, high_r2: 0x00000000
    214     high_r3: 0x00000000, high_r4: 0x00000000, high_r5: 0x000003ff
    215     high_r6: 0x00000000, high_r7: 0x00000000, high_r8: 0x00000000
    216     high_r9: 0x00000000, high_r10: 0x00000000, high_r11: 0x00000000
    217     high_r12: 0x000003ff, high_r13: 0x00000000, high_r14: 0x00000000
    218     high_r15: 0x00000000
    219 EOF
    220 
    221 # To reproduce this core dump, do this on x86_64 machine with Linux
    222 # 3.7 or later:
    223 # $ gcc -x c <(echo 'int main () { return *(int *)0x12345678; }')
    224 # $ ./a.out
    225 testfiles testfile71
    226 testrun_compare ${abs_top_builddir}/src/readelf -n testfile71 <<\EOF
    227 
    228 Note segment of 1476 bytes at offset 0x430:
    229   Owner          Data size  Type
    230   CORE                 336  PRSTATUS
    231     info.si_signo: 11, info.si_code: 0, info.si_errno: 0, cursig: 11
    232     sigpend: <>
    233     sighold: <>
    234     pid: 9664, ppid: 2868, pgrp: 9664, sid: 2868
    235     utime: 0.000000, stime: 0.004000, cutime: 0.000000, cstime: 0.000000
    236     orig_rax: -1, fpvalid: 0
    237     r15:                       0  r14:                       0
    238     r13:         140734971656848  r12:                 4195328
    239     rbp:      0x00007fff69fe39b0  rbx:                       0
    240     r11:            266286012928  r10:         140734971656256
    241     r9:                        0  r8:             266289790592
    242     rax:               305419896  rcx:                 4195584
    243     rdx:         140734971656872  rsi:         140734971656856
    244     rdi:                       1  rip:      0x00000000004004f9
    245     rflags:   0x0000000000010246  rsp:      0x00007fff69fe39b0
    246     fs.base:   0x00007fa1c8933740  gs.base:   0x0000000000000000
    247     cs: 0x0033  ss: 0x002b  ds: 0x0000  es: 0x0000  fs: 0x0000  gs: 0x0000
    248   CORE                 136  PRPSINFO
    249     state: 0, sname: R, zomb: 0, nice: 0, flag: 0x0000000000000200
    250     uid: 1000, gid: 1000, pid: 9664, ppid: 2868, pgrp: 9664, sid: 2868
    251     fname: a.out, psargs: ./a.out 
    252   CORE                 128  SIGINFO
    253     si_signo: 11, si_errno: 0, si_code: 1
    254     fault address: 0x12345678
    255   CORE                 304  AUXV
    256     SYSINFO_EHDR: 0x7fff69ffe000
    257     HWCAP: 0xafebfbff  <fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss tm pbe>
    258     PAGESZ: 4096
    259     CLKTCK: 100
    260     PHDR: 0x400040
    261     PHENT: 56
    262     PHNUM: 9
    263     BASE: 0
    264     FLAGS: 0
    265     ENTRY: 0x400400
    266     UID: 1000
    267     EUID: 1000
    268     GID: 1000
    269     EGID: 1000
    270     SECURE: 0
    271     RANDOM: 0x7fff69fe3d19
    272     EXECFN: 0x7fff69fe4ff0
    273     PLATFORM: 0x7fff69fe3d29
    274     NULL
    275   CORE                 469  FILE
    276     10 files:
    277       00400000-00401000 00000000 4096                /home/petr/a.out
    278       00600000-00601000 00000000 4096                /home/petr/a.out
    279       00601000-00602000 00001000 4096                /home/petr/a.out
    280       3dffa00000-3dffa21000 00000000 135168          /usr/lib64/ld-2.17.so
    281       3dffc20000-3dffc21000 00020000 4096            /usr/lib64/ld-2.17.so
    282       3dffc21000-3dffc22000 00021000 4096            /usr/lib64/ld-2.17.so
    283       3dffe00000-3dfffb6000 00000000 1794048         /usr/lib64/libc-2.17.so
    284       3dfffb6000-3e001b6000 001b6000 2097152         /usr/lib64/libc-2.17.so
    285       3e001b6000-3e001ba000 001b6000 16384           /usr/lib64/libc-2.17.so
    286       3e001ba000-3e001bc000 001ba000 8192            /usr/lib64/libc-2.17.so
    287 EOF
    288 
    289 # To reproduce this core dump, do this on an aarch64 machine:
    290 # $ gcc -x c <(echo 'int main () { return *(int *)0x12345678; }')
    291 # $ ./a.out
    292 testfiles testfile_aarch64_core
    293 testrun_compare ${abs_top_builddir}/src/readelf -n testfile_aarch64_core <<\EOF
    294 
    295 Note segment of 2512 bytes at offset 0x270:
    296   Owner          Data size  Type
    297   CORE                 392  PRSTATUS
    298     info.si_signo: 11, info.si_code: 0, info.si_errno: 0, cursig: 11
    299     sigpend: <>
    300     sighold: <>
    301     pid: 16547, ppid: 3822, pgrp: 16547, sid: 3822
    302     utime: 0.010000, stime: 0.000000, cutime: 0.000000, cstime: 0.000000
    303     pc: 0x0000000000400548, pstate: 0x0000000060000000, fpvalid: 1
    304     x0:             305419896  x1:          548685596648
    305     x2:          548685596664  x3:               4195648
    306     x4:                     0  x5:          548536191688
    307     x6:                     0  x7:  -6341196323062964528
    308     x8:                   135  x9:            4294967295
    309     x10:              4195026  x11:               184256
    310     x12:                  144  x13:                   15
    311     x14:         548536635328  x15:                    0
    312     x16:         548534815304  x17:              4262024
    313     x18:         548685596000  x19:                    0
    314     x20:                    0  x21:              4195296
    315     x22:                    0  x23:                    0
    316     x24:                    0  x25:                    0
    317     x26:                    0  x27:                    0
    318     x28:                    0  x29:         548685596320
    319     x30:         548534815544  sp:    0x0000007fc035c6a0
    320   CORE                 136  PRPSINFO
    321     state: 0, sname: R, zomb: 0, nice: 0, flag: 0x0000000000400400
    322     uid: 0, gid: 0, pid: 16547, ppid: 3822, pgrp: 16547, sid: 3822
    323     fname: a.out, psargs: ./a.out 
    324   CORE                 128  SIGINFO
    325     si_signo: 11, si_errno: 0, si_code: 1
    326     fault address: 0x12345678
    327   CORE                 304  AUXV
    328     SYSINFO_EHDR: 0x7fb7500000
    329     HWCAP: 0x3
    330     PAGESZ: 65536
    331     CLKTCK: 100
    332     PHDR: 0x400040
    333     PHENT: 56
    334     PHNUM: 7
    335     BASE: 0x7fb7520000
    336     FLAGS: 0
    337     ENTRY: 0x4003e0
    338     UID: 0
    339     EUID: 0
    340     GID: 0
    341     EGID: 0
    342     SECURE: 0
    343     RANDOM: 0x7fc035c9e8
    344     EXECFN: 0x7fc035fff0
    345     PLATFORM: 0x7fc035c9f8
    346     NULL
    347   CORE                 306  FILE
    348     6 files:
    349       00400000-00410000 00000000 65536               /root/elfutils/build/a.out
    350       00410000-00420000 00000000 65536               /root/elfutils/build/a.out
    351       7fb7370000-7fb74d0000 00000000 1441792         /usr/lib64/libc-2.17.so
    352       7fb74d0000-7fb74f0000 00150000 131072          /usr/lib64/libc-2.17.so
    353       7fb7520000-7fb7540000 00000000 131072          /usr/lib64/ld-2.17.so
    354       7fb7540000-7fb7550000 00010000 65536           /usr/lib64/ld-2.17.so
    355   CORE                 528  FPREGSET
    356     fpsr: 0x00000000, fpcr: 0x00000000
    357     v0:  0x00000000000af54b000000000000fe02
    358     v1:  0x00000000000000000000000000000000
    359     v2:  0x00000000000000000000000000000000
    360     v3:  0x00000000000000000000000000000000
    361     v4:  0x00000000000000000000000000000000
    362     v5:  0x00000000000000000000000000000000
    363     v6:  0x00000000000000000000000000000000
    364     v7:  0x00000000000000000000000000000000
    365     v8:  0x00000000000000000000000000000000
    366     v9:  0x00000000000000000000000000000000
    367     v10: 0x00000000000000000000000000000000
    368     v11: 0x00000000000000000000000000000000
    369     v12: 0x00000000000000000000000000000000
    370     v13: 0x00000000000000000000000000000000
    371     v14: 0x00000000000000000000000000000000
    372     v15: 0x00000000000000000000000000000000
    373     v16: 0x00000000000000000000000000000000
    374     v17: 0x00000000000000000000000000000000
    375     v18: 0x00000000000000000000000000000000
    376     v19: 0x00000000000000000000000000000000
    377     v20: 0x00000000000000000000000000000000
    378     v21: 0x00000000000000000000000000000000
    379     v22: 0x00000000000000000000000000000000
    380     v23: 0x00000000000000000000000000000000
    381     v24: 0x00000000000000000000000000000000
    382     v25: 0x00000000000000000000000000000000
    383     v26: 0x00000000000000000000000000000000
    384     v27: 0x00000000000000000000000000000000
    385     v28: 0x00000000000000000000000000000000
    386     v29: 0x00000000000000000000000000000000
    387     v30: 0x00000000000000000000000000000000
    388     v31: 0x00000000000000000000000000000000
    389   LINUX                  8  ARM_TLS
    390     tls: 0x0000007fb73606f0
    391   LINUX                264  ARM_HW_BREAK
    392     dbg_info: 0x00000610
    393     DBGBVR0_EL1: 0x0000000000000000, DBGBCR0_EL1: 0x00000000
    394     DBGBVR1_EL1: 0x0000000000000000, DBGBCR1_EL1: 0x00000000
    395     DBGBVR2_EL1: 0x0000000000000000, DBGBCR2_EL1: 0x00000000
    396     DBGBVR3_EL1: 0x0000000000000000, DBGBCR3_EL1: 0x00000000
    397     DBGBVR4_EL1: 0x0000000000000000, DBGBCR4_EL1: 0x00000000
    398     DBGBVR5_EL1: 0x0000000000000000, DBGBCR5_EL1: 0x00000000
    399     DBGBVR6_EL1: 0x0000000000000000, DBGBCR6_EL1: 0x00000000
    400     DBGBVR7_EL1: 0x0000000000000000, DBGBCR7_EL1: 0x00000000
    401     DBGBVR8_EL1: 0x0000000000000000, DBGBCR8_EL1: 0x00000000
    402     DBGBVR9_EL1: 0x0000000000000000, DBGBCR9_EL1: 0x00000000
    403     DBGBVR10_EL1: 0x0000000000000000, DBGBCR10_EL1: 0x00000000
    404     DBGBVR11_EL1: 0x0000000000000000, DBGBCR11_EL1: 0x00000000
    405     DBGBVR12_EL1: 0x0000000000000000, DBGBCR12_EL1: 0x00000000
    406     DBGBVR13_EL1: 0x0000000000000000, DBGBCR13_EL1: 0x00000000
    407     DBGBVR14_EL1: 0x0000000000000000, DBGBCR14_EL1: 0x00000000
    408     DBGBVR15_EL1: 0x0000000000000000, DBGBCR15_EL1: 0x00000000
    409   LINUX                264  ARM_HW_WATCH
    410     dbg_info: 0x00000610
    411     DBGWVR0_EL1: 0x0000000000000000, DBGWCR0_EL1: 0x00000000
    412     DBGWVR1_EL1: 0x0000000000000000, DBGWCR1_EL1: 0x00000000
    413     DBGWVR2_EL1: 0x0000000000000000, DBGWCR2_EL1: 0x00000000
    414     DBGWVR3_EL1: 0x0000000000000000, DBGWCR3_EL1: 0x00000000
    415     DBGWVR4_EL1: 0x0000000000000000, DBGWCR4_EL1: 0x00000000
    416     DBGWVR5_EL1: 0x0000000000000000, DBGWCR5_EL1: 0x00000000
    417     DBGWVR6_EL1: 0x0000000000000000, DBGWCR6_EL1: 0x00000000
    418     DBGWVR7_EL1: 0x0000000000000000, DBGWCR7_EL1: 0x00000000
    419     DBGWVR8_EL1: 0x0000000000000000, DBGWCR8_EL1: 0x00000000
    420     DBGWVR9_EL1: 0x0000000000000000, DBGWCR9_EL1: 0x00000000
    421     DBGWVR10_EL1: 0x0000000000000000, DBGWCR10_EL1: 0x00000000
    422     DBGWVR11_EL1: 0x0000000000000000, DBGWCR11_EL1: 0x00000000
    423     DBGWVR12_EL1: 0x0000000000000000, DBGWCR12_EL1: 0x00000000
    424     DBGWVR13_EL1: 0x0000000000000000, DBGWCR13_EL1: 0x00000000
    425     DBGWVR14_EL1: 0x0000000000000000, DBGWCR14_EL1: 0x00000000
    426     DBGWVR15_EL1: 0x0000000000000000, DBGWCR15_EL1: 0x00000000
    427 EOF
    428 
    429 # To reproduce this core dump, do this on an i686 machine:
    430 # $ gcc -x c <(echo 'int main () { return *(int *)0x12345678; }')
    431 # $ ./a.out
    432 testfiles testfile_i686_core
    433 testrun_compare ${abs_top_builddir}/src/readelf -n testfile_i686_core <<\EOF
    434 
    435 Note segment of 1000 bytes at offset 0x214:
    436   Owner          Data size  Type
    437   CORE                 144  PRSTATUS
    438     info.si_signo: 11, info.si_code: 0, info.si_errno: 0, cursig: 11
    439     sigpend: <>
    440     sighold: <>
    441     pid: 27395, ppid: 1130, pgrp: 27395, sid: 1130
    442     utime: 0.000000, stime: 0.001000, cutime: 0.000000, cstime: 0.000000
    443     orig_eax: -1, fpvalid: 0
    444     ebx:     1334976512  ecx:    -1239415396  edx:    -1079283900
    445     esi:              0  edi:              0  ebp:     0xbfab6f18
    446     eax:      305419896  eip:     0x08048408  eflags:  0x00010246
    447     esp:     0xbfab6f18
    448     ds: 0x007b  es: 0x007b  fs: 0x0000  gs: 0x0033  cs: 0x0073  ss: 0x007b
    449   CORE                 124  PRPSINFO
    450     state: 0, sname: R, zomb: 0, nice: 0, flag: 0x00000200
    451     uid: 1000, gid: 1000, pid: 27395, ppid: 1130, pgrp: 27395, sid: 1130
    452     fname: a.out, psargs: ./a.out 
    453   CORE                 128  SIGINFO
    454     si_signo: 11, si_errno: 0, si_code: 1
    455     fault address: 0x12345678
    456   CORE                 160  AUXV
    457     SYSINFO: 0xb77fc414
    458     SYSINFO_EHDR: 0xb77fc000
    459     HWCAP: 0x780abfd  <fpu de pse tsc msr pae mce cx8 apic sep pge cmov mmx fxsr sse sse2>
    460     PAGESZ: 4096
    461     CLKTCK: 100
    462     PHDR: 0x8048034
    463     PHENT: 32
    464     PHNUM: 9
    465     BASE: 0
    466     FLAGS: 0
    467     ENTRY: 0x80482f0
    468     UID: 1000
    469     EUID: 1000
    470     GID: 1000
    471     EGID: 1000
    472     SECURE: 0
    473     RANDOM: 0xbfab70eb
    474     EXECFN: 0xbfab7ff4
    475     PLATFORM: 0xbfab70fb
    476     NULL
    477   CORE                 275  FILE
    478     9 files:
    479       08048000-08049000 00000000 4096                /tmp/a.out
    480       08049000-0804a000 00000000 4096                /tmp/a.out
    481       0804a000-0804b000 00001000 4096                /tmp/a.out
    482       4f744000-4f763000 00000000 126976              /usr/lib/ld-2.18.so
    483       4f764000-4f765000 0001f000 4096                /usr/lib/ld-2.18.so
    484       4f765000-4f766000 00020000 4096                /usr/lib/ld-2.18.so
    485       4f768000-4f920000 00000000 1802240             /usr/lib/libc-2.18.so
    486       4f920000-4f922000 001b8000 8192                /usr/lib/libc-2.18.so
    487       4f922000-4f923000 001ba000 4096                /usr/lib/libc-2.18.so
    488   LINUX                 48  386_TLS
    489     index: 6, base: 0xb77da700, limit: 0x000fffff, flags: 0x00000051
    490     index: 7, base: 0x00000000, limit: 0x00000000, flags: 0x00000028
    491     index: 8, base: 0x00000000, limit: 0x00000000, flags: 0x00000028
    492 EOF
    493 
    494 # To reproduce this core dump, do this on x86_64 machine with Linux
    495 # 3.7 or later:
    496 # $ gcc -mx32 -x c <(echo 'int main () { return *(int *)0x12345678; }')
    497 # $ ./a.out
    498 testfiles testfile-x32-core
    499 testrun_compare ${abs_top_builddir}/src/readelf -n testfile-x32-core <<\EOF
    500 
    501 Note segment of 2548 bytes at offset 0x234:
    502   Owner          Data size  Type
    503   CORE                 296  PRSTATUS
    504     info.si_signo: 11, info.si_code: 0, info.si_errno: 0, cursig: 11
    505     sigpend: <>
    506     sighold: <>
    507     pid: 6885, ppid: 2792, pgrp: 6885, sid: 2792
    508     utime: 0.000000, stime: 0.001000, cutime: 0.000000, cstime: 0.000000
    509     orig_rax: -1, fpvalid: 1
    510     r15:                       0  r14:                       0
    511     r13:              4290830656  r12:                 4194960
    512     rbp:      0x00000000ffc0e070  rbx:                       0
    513     r11:              4145779200  r10:                       0
    514     r9:               4149627024  r8:               4149551744
    515     rax:               305419896  rcx:                 4195216
    516     rdx:              4290830668  rsi:              4290830660
    517     rdi:                       1  rip:      0x0000000000400380
    518     rflags:   0x0000000000010246  rsp:      0x00000000ffc0e070
    519     fs.base:   0x00000000f7754700  gs.base:   0x0000000000000000
    520     cs: 0x0033  ss: 0x002b  ds: 0x002b  es: 0x002b  fs: 0x0063  gs: 0x0000
    521   CORE                 124  PRPSINFO
    522     state: 0, sname: R, zomb: 0, nice: 0, flag: 0x00406600
    523     uid: 1000, gid: 1000, pid: 6885, ppid: 2792, pgrp: 6885, sid: 2792
    524     fname: a.out, psargs: ./a.out 
    525   CORE                 128  SIGINFO
    526     si_signo: 11, si_errno: 0, si_code: 1
    527     fault address: 0x12345678
    528   CORE                 152  AUXV
    529     SYSINFO_EHDR: 0xffd49000
    530     HWCAP: 0xbfebfbff  <fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe>
    531     PAGESZ: 4096
    532     CLKTCK: 100
    533     PHDR: 0x400034
    534     PHENT: 32
    535     PHNUM: 8
    536     BASE: 0xf7555000
    537     FLAGS: 0
    538     ENTRY: 0x400290
    539     UID: 1000
    540     EUID: 1000
    541     GID: 1000
    542     EGID: 1000
    543     SECURE: 0
    544     RANDOM: 0xffc0e2cb
    545     EXECFN: 0xffc0fff0
    546     PLATFORM: 0xffc0e2db
    547     NULL
    548   CORE                 361  FILE
    549     9 files:
    550       00400000-00401000 00000000 4096                /export/home/hjl/bugs/gdb/x32-1/a.out
    551       00600000-00601000 00000000 4096                /export/home/hjl/bugs/gdb/x32-1/a.out
    552       f71a2000-f734f000 00000000 1757184             /usr/libx32/libc-2.20.so
    553       f734f000-f754e000 001ad000 2093056             /usr/libx32/libc-2.20.so
    554       f754e000-f7551000 001ac000 12288               /usr/libx32/libc-2.20.so
    555       f7551000-f7552000 001af000 4096                /usr/libx32/libc-2.20.so
    556       f7555000-f7575000 00000000 131072              /usr/libx32/ld-2.20.so
    557       f7774000-f7775000 0001f000 4096                /usr/libx32/ld-2.20.so
    558       f7775000-f7776000 00020000 4096                /usr/libx32/ld-2.20.so
    559   CORE                 512  FPREGSET
    560     xmm0:  0x0000000000000000000000000000ff00
    561     xmm1:  0x2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f
    562     xmm2:  0x00000000000000000000000000000000
    563     xmm3:  0x0000000000000000ff00000000000000
    564     xmm4:  0x000000000000000000ff000000000000
    565     xmm5:  0x00000000000000000000000000000000
    566     xmm6:  0x00000000000000000000000000000000
    567     xmm7:  0x00000000000000000000000000000000
    568     xmm8:  0x00000000000000000000000000000000
    569     xmm9:  0x00000000000000000000000000000000
    570     xmm10: 0x00000000000000000000000000000000
    571     xmm11: 0x00000000000000000000000000000000
    572     xmm12: 0x00000000000000000000000000000000
    573     xmm13: 0x00000000000000000000000000000000
    574     xmm14: 0x00000000000000000000000000000000
    575     xmm15: 0x00000000000000000000000000000000
    576     st0: 0x00000000000000000000  st1: 0x00000000000000000000
    577     st2: 0x00000000000000000000  st3: 0x00000000000000000000
    578     st4: 0x00000000000000000000  st5: 0x00000000000000000000
    579     st6: 0x00000000000000000000  st7: 0x00000000000000000000
    580     mxcsr:   0x0000ffff00001f80
    581     fcw: 0x037f  fsw: 0x0000
    582   LINUX                832  X86_XSTATE
    583 EOF
    584 
    585 exit 0
    586