bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug ld/25677] Changes to --*magic options for pdp11-aout target


From: casner at acm dot org
Subject: [Bug ld/25677] Changes to --*magic options for pdp11-aout target
Date: Mon, 30 Mar 2020 16:10:40 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=25677

--- Comment #6 from Stephen Casner <casner at acm dot org> ---
The key point I did not know is that failures were expected.  I have been
studying the detail log and the test scripts (I have programmed in Tcl, but it
was about 30 years ago) to see why FAIL: extract scripts and the two FAIL:
MEMORY failures preceding it occur.  The symbol extraction is probably caused
by my introduction of pdp11.sc so I can investigate that.  The other two occur
because the tests assume a word size and address space larger than 16 bits. 
For example, in ld-scripts/script.exp the "MEMORY with symbols" test sets
DATA_LENGTH=0x10000 but I think the choice of a number larger that 16 bits is
arbitrary.  Would it be reasonable to introduce changes to make the tests
compatible with a 16-bit address space?

For the test "MEMORY", the failure occurs because nm is not properly treating
addresses as 16 bits, and that might be considered a real bug.  Here's the
output:

00001004 D data_end
00001000 T data_start
00001000 D data_symbol
00001000 D fred
00000104 T text_end
00000100 T text_start
00000100 T text_symbol
00000100 t tmpdir/script.o
ffffffffffff8100 D tred

For the PDP-11 with 16-bit address space this should more properly be:

1004 D data_end
1000 T data_start
1000 D data_symbol
1000 D fred
0104 T text_end
0100 T text_start
0100 T text_symbol
0100 t tmpdir/script.o
8100 D tred

There is pretty clearly a bug where 0x8100 gets sign extended to 64 bits.

One side question you might be able to answer for me: where is "fail"
implemented?  I searched but could not find it.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]