NetBSD/gnu/dist
mycroft b9c785bd44 As seen on tech-toolchain:
So the problem is thus:

* The {u,}mulsidi3 generate two parallel sets which modify the upper and lower
halves of the target register.

* life_analysis() does not track subregister modifications -- if you don't
modify the whole register with a single set, it considers the register
unused.

The simple, if klugy, solution to this is to stick an explicit clobber in.  It
seems to work.

While doing this, I noticed that constant folding was not happening for
32x32->64 multiplies.  This is because the parallel set generated by
{u,}mulsidi3 cannot be folded at all.  To solve this, I first expand to a
normal multiply, and then use a define_insn_and_split to convert it to the
parallel set after CSE and constant folding.

This patch has also been submitted to GCC bugzilla, but who knows if I'll get
a reply to that.
2003-10-29 21:25:03 +00:00
..
autoconf
bc Prevent funny output when giving a directory name on the command line. 2003-10-13 21:52:40 +00:00
cvs Avoid re-entry in the cleanup signal handlers. 2003-10-09 13:43:00 +00:00
diffutils Re-add. 2003-01-26 01:53:40 +00:00
gawk Obsoleted by the update to 3.1.3 (moved to missing_d dir). 2003-10-06 18:27:45 +00:00
gcc As seen on tech-toolchain: 2003-10-29 21:25:03 +00:00
gdb Make it compile again. Blind copy-and-paste from sparc64nbsd-nat.c. 2003-10-27 14:10:54 +00:00
gettext disable rules that try to rebuild files in the source tree (only affects 2003-03-01 13:14:17 +00:00
grep Missing ':', noted by Thomas T. Thai 2003-04-22 16:17:39 +00:00
groff fix cross-building from linux. this is rev. 1.23 from groff CVS 2003-10-26 00:39:23 +00:00
postfix Document the canonicalize_envelope_recipient variable. 2003-08-22 04:43:21 +00:00
sendmail Bump version number after parse8.359.2.8 patch has been applied. 2003-09-17 20:23:00 +00:00
texinfo Remove local ENABLE_NLS patches which were added for smaller executable 2003-09-08 13:33:00 +00:00
toolchain If host is x86-*-netbsd*, don't descend into gcc, gdb, and rcs 2003-10-23 02:58:49 +00:00
README.toolchain Update binutils version and correct gnusrc/ 2003-03-05 08:42:49 +00:00

README.toolchain

$NetBSD: README.toolchain,v 1.4 2003/03/05 08:42:49 skrll Exp $


HOW TO BUILD A CROSS COMPILER
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[Section to be written.]

See also: http://www.netbsd.org/Documentation/cross/


IMPORTED VERSIONS
~~~~~~~~~~~~~~~~~
The following software is in gnusrc/gnu/dist/toolchain, in a unified build
structure:

    gcc-2.95.3
    binutils-2.13.2.1
    gdb-5.0


IMPORT STEPS
~~~~~~~~~~~~
1. All distributions were unpacked and all `.cvsignore' files were
   removed.

2. All files in gcc's `include' top level directory were removed from
   binutils's `include' top level directory (these are the libiberty
   include files).

   cd gcc-*/include; for f in *; do rm -f ../../binutils-*/include/$f; done

3. The gcc distribution was imported in one shot into
   src/gnu/dist/toolchain, including the recursive build structure.

4. The binutils distribution was stripped down to the following directories,
   with no files at the top level:

   bfd, binutils, gas, gprof, include, intl, ld, opcodes

5. Binutils was imported into src/gnu/dist/toolchain, which included
   only the subdirectories above.

6. The gdb distribution was stripped down to the following directories,
   with no files at the top level:

   gdb, mmalloc, readline, sim

7. Gdb was imported into src/gnu/dist/toolchain, which included only
   the subdirectories above.