On Wed, 11 Dec 2013, Kenneth Zadeck wrote: > > > This patch is for the trunk, but it solves a problem that comes up for > wide-int. For wide-int we need to have the BITS_PER_UNIT available earlier. > So this patch sets the default value (8) in genmodes.c so that it is available > by anyone who includes insn-modes.h. The generator for tm.h was modified to > include insn-modes.h. The value for BITS_PER_UNIT can be overridden by any > port by placing a define for it in their target modes file. > > This patch removes the definition of BITS_PER_UNIT from 7 platform .h files. > All of those platforms initialized it to the default value so there was no > need for additions to their target modes file. > > In addition, this target also changes the way that MAX_BITSIZE_MODE_ANY_INT is > calculated. The value is heavily used on the wide-int branch to allocate > buffers that are used to hold large integer values. The change in the way it > is computed was motivated by the i386 port, but there may be other ports that > have the same problem. The i386 port defines two very large integer modes > that are only used as containers for large vectors. They are never used for > large integers. The new way of computing this allows a port to say (very > early) that some of these integer modes are never used to hold numbers and so > smaller buffers can be used for integer calculations. Other ports that play > the same game should follow suit. > > This patch has been bootstrapped and regression tested on x86-64. Ok to > commit?
Ok. Thanks, Richard. > Kenny > -- Richard Biener <rguent...@suse.de> SUSE / SUSE Labs SUSE LINUX Products GmbH - Nuernberg - AG Nuernberg - HRB 16746 GF: Jeff Hawn, Jennifer Guild, Felix Imend"orffer