This is the mail archive of the gdb@sourceware.org mailing list for the GDB 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: (len % 1) != 0


On 19 February 2008 18:23, Paul Koning wrote:

>>>>>> "Dave" == Dave Korn <dave.korn@artimi.com> writes:
> 
>  Dave> On 19 February 2008 16:30, Sheng-Liang Song wrote:
>  >> or
>  >>
>  >> (len & 1) != 0 <=> (len % 2) != 0
>  >>
> 
>  Dave> That would have the advantage of not requiring a divide
>  Dave> operation :)
> 
> It shouldn't matter -- the optimizer will do the right thing, as I
> recall.

  NB len == signed int.

  Yes, it can simplify it to a bunch of shifts and sign extends and masks
without using an explicit divide, but it's not as good as a simple AND
operation.  (Maybe VRP in 4.x could handle that by knowing that the result of
strlen has to be >= 0, but 3.x series won't do it).


    cheers,
      DaveK
-- 
Can't think of a witty .sigline today....


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