[PATCH] Improved udivmodsi4 with support for ARMv4
Renato Golin
renato.golin at linaro.org
Fri Jan 24 01:46:55 PST 2014
================
Comment at: lib/arm/udivmodsi4.S:111
@@ +110,3 @@
+
+ block(31)
+ block(30)
----------------
Joerg Sonnenberger wrote:
> Saleem Abdulrasool wrote:
> > Can you please rewrite the loop unrolling as:
> >
> > .macro block shift
> > cmp r0, r1, lsl # \shift
> > addhs r3, r3, #(1 << \shift)
> > subhs r0, r0, r1, lsl # \shift
> > .endm
> >
> > .Lround = 31
> > .rept 31
> > block .Lround
> > .Lround = .Lround - 1
> > .endr
> > LOCAL_LABEL(div0block):
> > block 0
> >
> > The net effect is identical, but it is much simpler to maintain IMO.
> GAS macros should burn in hell, so I disagree on this.
I agree with Joerg. Making the IAS support macros is one thing, actually using it is quite another.
http://llvm-reviews.chandlerc.com/D2595
More information about the llvm-commits
mailing list