Hi Peter,
Sorry to keep you waiting - I was on VAC in South Africa after
DebConf, and I'm just catching up on things again now.
On Wed, Jul 06, 2016 at 01:31:54AM +0100, Peter Green wrote:
>Tags 695547 +patch
>Thanks
>
>On 05/07/16 23:37, Steve McIntyre wrote:
>>So Peter and I were talking a little earlier on #debian-arm,
>Specifically we were talking about the arm tag/flag stuff. I haven't looked
>into the powerpc issue. Freepascal has a chunk of platform/cpu specific
>assembler code that is used for mixed pascal/c programs to initialise both
>the freepascal runtime library and libc. The powerpc linux version of this
>file is located at rtl/linux/powerpc/cprt0.as . It would not surprise me if
>it was something to do with this init code.
>
>It would be good to try and get a backtrace ("access violation" generally
>means that the freepascal runtime library trapped a segfault and turned it
>into an exception).
>
>The remainder of this mail is about the arm tag/flag stuff.
>> and he
>>was making good progress on fixing stuff. He may have stuff all done
>>shortly, I guess... :-)
>I think i've fixed the arm tag/flag stuff. With the small patch attached I
>get the following.
>
>root@odroidu2:/# readelf --file-header /usr/bin/fpc
>ELF Header:
> Magic: 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
> Class: ELF32
> Data: 2's complement, little endian
> Version: 1 (current)
> OS/ABI:UNIX - System V
> ABI Version: 0
> Type: EXEC (Executable file)
> Machine: ARM
> Version: 0x1
> Entry point address: 0x100ec
> Start of program headers: 52 (bytes into file)
> Start of section headers: 410616 (bytes into file)
> Flags: 0x5000400, Version5 EABI, hard-float ABI
> Size of this header: 52 (bytes)
> Size of program headers: 32 (bytes)
> Number of program headers: 4
> Size of section headers: 40 (bytes)
> Number of section headers: 8
> Section header string table index: 7
>root@odroidu2:/#
>
>root@odroidu2:/# readelf -a /usr/bin/fpc
>ELF Header:
> Magic: 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
> Class: ELF32
> Data: 2's complement, little endian
> Version: 1 (current)
> OS/ABI:UNIX - System V
> ABI Version: 0
> Type: EXEC (Executable file)
> Machine: ARM
> Version: 0x1
> Entry point address: 0x100ec
> Start of program headers: 52 (bytes into file)
> Start of section headers: 410616 (bytes into file)
> Flags: 0x5000400, Version5 EABI, hard-float ABI
> Size of this header: 52 (bytes)
> Size of program headers: 32 (bytes)
> Number of program headers: 4
> Size of section headers: 40 (bytes)
> Number of section headers: 8
> Section header string table index: 7
>
>
>Section Headers:
> [Nr] Name TypeAddr OffSize ES Flg Lk Inf
> Al
> [ 0] NULL 00 00 00 0 0 > 0
> [ 1] .note.ABI-tag NOTE000100c0 c0 20 00 A 0 0
> 16
> [ 2] .text PROGBITS000100e0 e0 0501a4 00 AX 0 0
> 4
> [ 3] .rodata PROGBITS00060288 050288 010828 00 A 0 0
> 8
> [ 4] .data PROGBITS00081000 061000 003395 00 WA 0 0
> 8
> [ 5] .bss NOBITS 00084398 064395 00237c 00 WA 0 0
> 4
> [ 6] .ARM.attributes ARM_ATTRIBUTES 064395 21 00 0 0
> 1
> [ 7] .shstrtab STRTAB 0643b6 42 00 0 0
> 1
>Key to Flags:
> W (write), A (alloc), X (execute), M (merge), S (strings)
> I (info), L (link order), G (group), T (TLS), E (exclude), x (unknown)
> O (extra OS processing required) o (OS specific), p (processor specific)
>
>There are no section groups in this file.
>
>Program Headers:
> Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
> LOAD 0x00 0x0001 0x0001 0x60ab0 0x60ab0 R E 0x1
> LOAD 0x061000 0x00081000 0x00081000 0x03395 0x05714 RW 0x1
> NOTE 0xc0 0x000100c0 0x000100c0 0x00020 0x00020 R 0x10
> GNU_STACK 0x00 0x 0x 0x0 0x0 RW 0x10
>
> Section to Segment mapping:
> Segment Sections...
> 00 .note.ABI-tag .text .rodata
> 01 .data .bss
> 02 .note.ABI-tag
> 03
>
>There is no dynamic section in this file.
>
>There are no relocations in this file.
>
>There are no unwind