fe7810c7dc
1. Change linkspec to not pass -nostdlib to binutils ld, since on mips, ld parses "-nostdlib" as a set of short options which produce nonworking binaries. 2. Turn off ASM_OUTPUT_DEF definition: the egcs iris6.h says that our old definition (from gcc 2.7.2.2 iris5.h isnt really whats wanted here. 3. Turn off SET_ASM_OP (which defaults to .set) to stop dwarf2out.c from emitting debug(?) info for C++ using ".set", since both gas and mips as use .set to control assembler optimizations, not for equating labels. From iris6.h. and nonzero -G values are incompatible with PIC. 4. Set default GVALUE (for -G) to 0; this target always produces PIC by default, and on mips, PIC is incompatible with `small' segment. 5. Set TARGET_DEFAULT to enable "-mdebuga" to defeat GO_IF_LEGITIMATE_ADDRESS "smarts". GO_IF_LEGITIMATE_ADDRESS pretends that mips supports an address mode of constant + register. For constants larger than 16 bits, that relies on assembler fixups via $at. egcs 1.1 (expr.c delta 1.76) may break up those addresses such that the backend cannot output them as offsets in load or store instructions anymore; no other patterns match so egcs coredumps. |
||
---|---|---|
bin | ||
distrib | ||
etc | ||
games | ||
gnu | ||
include | ||
lib | ||
libexec | ||
regress | ||
sbin | ||
share | ||
sys | ||
usr.bin | ||
usr.sbin | ||
Makefile |