Commit Graph

121 Commits

Author SHA1 Message Date
thorpej e93b1005a7 Apply rev 1.4 of gnu/dist/gcc/config/sh/sh.h:
fix REGISTER_MOVE_COST bug (gcc original rev. 1.43):

> *sh.h (REGISTER_MOVE_COST): Change PR_REG to PR_REGS
2001-12-16 18:56:45 +00:00
thorpej 3274936f9b Apply rev 1.3 of gnu/dist/gcc/config/sh/sh.h (fix ASM_OUTPUT_REG_PUSH
and ASM_OUTPUT_REG_POP):

fix two bugs:
	- cc1 dumps core when "-pg" is used
	- gas produces a syntax error
2001-12-16 18:54:10 +00:00
thorpej d63c80c2c6 Apply rev. 1.2 of gnu/dist/gcc/config/sh/sh.h:
set DWARF_LINE_MIN_INSTR_LENGTH to 2 because the length of instruction
is fixed to 16bits.
2001-12-16 18:50:16 +00:00
thorpej c8a285e813 Apply rev. 1.7 of gnu/dist/config/sh/sh.c:
apply gcc original rev. 1.59:

 > * config/sh/sh.c (prepare_scc_operands): Apply force_reg to
 > sh_compare_op1 when the mode is DImode and sh_compare_op1 isn't
 > const0_rtx.
2001-12-16 18:47:47 +00:00
thorpej ff7287ad08 Apply change from rev 1.5 of gnu/dist/gcc/config/sh.c:
fix output_ieee_ccmpeq() bug:

- 2nd argument is not rtx but rtx *
- return value of output_ieee_ccmpeq is not void but char *
2001-12-16 18:38:19 +00:00
scw f87b859f0d After a discussion with Richard Henderson (rth at redhat dot com), add
the patch I posted to tech-toolchain@netbsd.org as a workaround for the
GOT bug whereby the callee-saved register %a5 can be trashed in certain
optimised -fPIC functions.

This may yet need to be fixed a different way, pending input from
Andreas Schwab on his change in revison 1.33 of this file in the
FSF source...

In the meantime, I've built and installed several NetBSD shared libraries
(including libc) with my change and found no problems.
2001-12-16 18:28:15 +00:00
thorpej 037cacf7e2 Define __NO_LEADING_UNDERSCORES__, since this sh-elf toolchain doesn't
use them.
2001-12-16 18:09:46 +00:00
thorpej c17876b1d2 Use the elf64alpha_nbsd linker emulation. 2001-12-16 04:26:17 +00:00
thorpej e3e5021be2 We need the versions of ASM_DECLARE_FUNCTION_NAME and
ASM_DECLARE_FUNCTION_SIZE from <alpha/alpha.h>, but <netbsd.h>
re-defines them.  So, re-define them again here to what
we need.
2001-12-16 04:02:48 +00:00
thorpej 72a263b8f7 Catch up with other Alpha-ELF changes. This will get cleaned up
even more somtime soon.
2001-12-16 03:09:19 +00:00
thorpej 80ed7d6a42 Clean up a bunch of the ELF support (looks like there was some sort
of merge error), and make the function/object type/size macros work
with the Alpha.
2001-12-16 03:07:59 +00:00
thorpej f589c8c881 Make sure SET_ASM_OP is undefined; the Alpha assembler uses .set
for assembler options.
2001-12-15 16:49:57 +00:00
thorpej 6ed87749ed Add support for building sh-*-netbsdelf (elf32-sh-big) and
shle-*-netbsdelf (elf32-sh-little).
2001-12-15 02:18:24 +00:00
jmc 8e9f3cf335 Account for possible alignment space before the exception table pointer when
dealing with the "eh" frames
2001-12-07 02:41:13 +00:00
jmc 39faa9cf1e Make sure the reloc for __EXCEPTION_TABLE__ in the "eh" exception frames is
fully aligned for the given arch. The sparc64 ld can't handle unaligned
relocs.
2001-12-07 02:40:36 +00:00
fredette 3ec17be693 Applied a strength-reduction patch from gcc-current. The patch
is in their revision 1.186, from schwab@suse.de, and said:

  Don't call reg_used_between_p if the insn from BL2 is after
  the insn from BL.

This fixes a cc1 SEGV on sys/dev/scsipi/ch.c rev 1.48 under -O2 or -Os,
seen on m68k and vax.
2001-12-06 18:50:34 +00:00
jmc e134e4e037 Add sh in front of all calls to move-if-change as it might no have execute
permission turned on
2001-12-02 04:10:11 +00:00
bjh21 7bdb61e034 Fix from Richard Earnshaw to make MASK_RETURN_ADDR work on both 26-bit and
32-bit ARMs, switching at run time.
2001-11-08 20:47:56 +00:00
rafal f317d28b1a New toolchain files for mipseb. Mainly toolchain2netbsd output with some
changes to configuration stuff to (a) recognize `mipseb', and (b) build a
BE-default GCC on mipseb.  gprof and gdb still not done.

WARNING: Binutils 2.11.2 (maybe earlier) changed the MIPS ABI, so any
shared libs built by this toolchain WILL NOT WORK without either a whack
to BFD to fix that or a patch to ld_elf.so to work around it.  I need to
chase the binutils folks on this issue still.

That said, the new toolchain seems to work quite well once the ABI change
is worked around/fixed -- I'm committing from a machine running a user-
land built with the new compiler.
2001-11-08 07:21:53 +00:00
mrg 857523fed5 fix a compile error when _not_:
#if HOST_BITS_PER_WIDE_INT == 32

found building cross powerpc compiler on sparc64 host.
2001-10-26 03:14:55 +00:00
matt 73b0a5ab88 disable minmax_arithsi pattern (from Richard Earnshaw). 2001-10-15 20:54:06 +00:00
thorpej 4e3296004c Need <string.h> for memset()/memcpy(). 2001-10-05 07:35:04 +00:00
thorpej 044932d6cc Need <string.h> when building the exception handler stuff on LP64
systems (like sparc64).
2001-10-05 07:04:04 +00:00
simonb b77ae95a9e For ns32k-netbsd, don't add ns32k/xm-netbsd.h to $xm_file; it gets
included in tconfig.h anyway.
2001-09-23 13:55:13 +00:00
simonb 8e868c5d17 Don't define mem{cmp,cpy,set}; from gcc-current after the 2.95.3 release. 2001-09-23 13:42:39 +00:00
mrg 3a6f34a1f2 fix part of previous: do pass -mcmodel=medlow to the 64 bit cc1 if -p*. 2001-09-07 07:19:52 +00:00
mrg 6e2daf5a64 fix the -m32 code to use /usr/lib/32 paths. don't pass -mcmodel to the 32bit cc1, it doesn't like that. 2001-08-30 09:30:40 +00:00
tv 7157e2832f XXX - force handing down of -no-gcc to off, so that cpp will predefine
__GNUC__ automatically.

Note that this is probably not the Right solution; we should fix any in-tree
uses of /usr/bin/cpp to use $CC -E.  However, this is being added for now
for backwards compatibility.
2001-08-14 13:46:14 +00:00
tv 0bcc7933e9 Trim the gcc frontend's paths way down to size. We know where system-supplied
libraries and so forth are, so we don't need to go looking in 9+ locations
for it.
2001-08-14 13:36:09 +00:00
tv 6c78eab38c Add the LINTCOMMENT hack, unconditional (no #ifdefs). Since gcc 3.0's cpp
does this Right (without even the overwrite-with-whitespace kludge), we
don't need to worry about breaking anything here.  Both -C and -CC will
result in full lint-capable comments.
2001-08-14 01:13:34 +00:00
mrg 4ccab74b56 enable dwarf2 exception handling. 2001-08-09 16:08:46 +00:00
mrg a630fd8b23 dwarf2 exceptions work on sparc & sparc64 now. 2001-08-05 18:45:57 +00:00
matt 36dc943f75 Change ARM-ELF to LP64 friendly types. 2001-07-28 07:42:28 +00:00
eeh 508945a491 Let profiling binaries be built without requiring special options. 2001-07-27 23:05:11 +00:00
matt 9edddea9c5 Nuke -D__KPRINTF_ATTRIBUTE__ 2001-07-26 07:27:59 +00:00
mrg 041c56a6d7 fix LINK_SPEC 2001-07-21 13:48:40 +00:00
mrg febe7ce944 - clean up more after <mips/elf.h> lossage, including killing the forced
support for "__main" (really __gccmain for mips), and the ctors/dtors
lists associated with this.
- add -G to SWITCH_TAKES_ARG(), so `-G 0' works as well as `-G0'
- add support for .init, .fini and .rodata (const) sections (basically
merging the generic ELF support with the MIPS support.)

kernel links and runs happily now.
2001-07-20 18:15:33 +00:00
matt cdb827bd00 Fix the polarity of a test. 2001-07-20 07:12:06 +00:00
matt e2fd07f958 Fix another warning. 2001-07-20 05:21:50 +00:00
matt 1cf42fcda9 Fix warning. 2001-07-20 05:16:56 +00:00
mrg 5877244037 set MIPS_DEFAULT_GVALUE to 0. undefine DWARF_FRAME_REGNUM,
DWARF_FRAME_RETURN_COLUMN and INCOMING_RETURN_ADDR_RTX so GCC doesn't think
we have dwarf2 unwind info support.  now this mostly works, though c++
exceptions seem to bus error...
2001-07-19 23:43:37 +00:00
mrg b82cf772de don't do dwarf2 eh if not DWARF2_UNWIND_INFO 2001-07-19 23:41:12 +00:00
mrg 337651a310 make this actually work: use <mips/elf.h> and <netbsd.h>, plus a few
little twiddles.
2001-07-19 18:37:38 +00:00
matt 77315351bc Fix a warning (missing const). 2001-07-19 18:31:57 +00:00
tv 38b4263bc6 Add missing %(cpp_cpu). 2001-07-18 13:54:47 +00:00
tv 25da59331f Remove -Dunix and -Di386. 2001-07-18 13:54:19 +00:00
tv 4c834f8068 Rename GCC_INCLUDE_DIR to STANDARD_INCLUDE_DIR for INCLUDE_DEFAULTS; change
STANDARD_INCLUDE_DIR to apply to all languages ("GCC" -> 0).
2001-07-18 13:07:05 +00:00
matt 8998641810 Shrink back to one vax--netbsd entry. Reorder includes so that we work
the new emitted tm.h files.
2001-06-25 05:49:43 +00:00
matt 31b2119a86 Back some changes until I figure out why they break things. 2001-06-25 05:15:34 +00:00
tv 487eab27f7 Remove reduntant ARRAY_SIZE definition. 2001-06-18 16:13:37 +00:00