This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Stupid assembler eh_frame check
- To: gcc-patches at gcc dot gnu dot org
- Subject: Stupid assembler eh_frame check
- From: Andreas Schwab <schwab at suse dot de>
- Date: 17 Jul 2001 14:09:27 +0200
The configure check for assembler eh_frame optimization does not handle
big endian targets.
2001-07-17 Andreas Schwab <schwab@suse.de>
* configure.in (assembler eh_frame optimization): Handle big
endian.
--- configure.in.~1.532.~ Thu Jun 28 10:11:25 2001
+++ configure.in Tue Jul 17 13:29:32 2001
@@ -1460,17 +1460,23 @@
.4byte .L1-.LFB1
.LEFDE1:
EOF
- cat > conftest.exp <<EOF
+ cat > conftest.lit <<EOF
0000 10000000 00000000 017a0001 781a0004 .........z..x...
0010 01000000 12000000 18000000 00000000 ................
0020 08000000 04080000 0044 .........D
EOF
+ cat > conftest.big <<EOF
+ 0000 00000010 00000000 017a0001 781a0004 .........z..x...
+ 0010 00000001 00000012 00000018 00000000 ................
+ 0020 00000008 04000000 0844 .........D
+EOF
# If the assembler didn't choke, and we can objdump,
# and we got the correct data, then succeed.
if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1 \
&& objdump -s -j .eh_frame conftest.o 2>/dev/null \
| tail -3 > conftest.got \
- && cmp conftest.exp conftest.got > /dev/null 2>&1
+ && { cmp conftest.lit conftest.got > /dev/null 2>&1 \
+ || cmp conftest.big conftest.got > /dev/null 2>&1; }
then
gcc_cv_as_eh_frame="yes"
else
--
Andreas Schwab "And now for something
SuSE Labs completely different."
Andreas.Schwab@suse.de
SuSE GmbH, Schanzäckerstr. 10, D-90443 Nürnberg
Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5