This is the mail archive of the gcc-patches@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]

Re: remove wrong code in immed_double_const


Hi,

On Wed, 21 Mar 2012, Mike Stump wrote:

> > If the high bit of i1 is set then currently you will get a negative 
> > number produced no matter the absolute value of it.
> 
> Ok, in the new patch, I'm pushing to change the spec so that the value 
> is sign extended and fixing all the code that doesn't conform to that 
> spec.

That certainly is strictly better than any of the other possibilities, I 
just didn't get the impression from your second mail to this thread that 
you were even considering doing that.  Good I was wrong.  If I notice 
anything I'll answer directly to the patch.

> > This positive/negative inconsistency doesn't make sense to allow, and 
> > the assert ensures that it isn't allowed.
> 
> Don't need the assert when there is no inconsistency, I believe that 
> resolving any inconsistencies should remove the need for the assert.

Correct.

> :-)  Only the point I wanted to make; that 0 is safe.  As such, it 
> proves that the spec, as you might call it, is wrong.

I would call it too strict, not wrong.  Because there are (or were after 
your fixes get it) values where there was a problem.  Of course that's 
again just splitting hair about terminology :)


Ciao,
Michael.


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