This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug tree-optimization/26361] [4.2 regression] bootstrap failure on Alpha: xgcc runs out of memory compiling libiberty/md5.c



------- Comment #19 from law at redhat dot com  2006-02-20 20:38 -------
Subject: Re:  [4.2 regression] bootstrap
        failure on Alpha: xgcc runs out of memory compiling libiberty/md5.c

On Mon, 2006-02-20 at 20:35 +0000, pinskia at gcc dot gnu dot org wrote:
> 
> ------- Comment #18 from pinskia at gcc dot gnu dot org  2006-02-20 20:34 -------
> (In reply to comment #17)
> > No, because if it's marked as varying we will not use it to
> > refine any other VRP ranges.
> 
> But this is an unsigned value which is varrying.  [0, +INF] for an unsigned
> value is varrying, I don't see why it would not be marked as such.
I understand your point, but if you look at how the simplifications
work in tree-vrp.c it's better to go ahead and give it an unsigned's
range rather than VR_VARYING.

Just like it's better to give an object the range [0, 1] if it's
a boolean.  It allows other simplifications that are not going to
take place with VR_VARYING.

While we could certain tweak all that code to look at the type's
information, it's far easier to use assign the object a range.

jeff


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26361


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]