[lno] [patch] vectorizer update - support constants.
Dorit Naishlos
DORIT@il.ibm.com
Thu Jan 22 22:05:00 GMT 2004
> Silly question, but why isn't that moved out of the loop?
The vectorizer actually generates the 0 initialization out of the loop, but
it is propagated into the store insn inside the loop during gcse:
(insn 17 16 18 1 (set (mem:V8HI (plus:SI (reg:SI 124)
(reg:SI 127)) [3 S16 A128])
(const_vector:V8HI [
(const_int 0 [0x0])
(const_int 0 [0x0])
(const_int 0 [0x0])
(const_int 0 [0x0])
(const_int 0 [0x0])
(const_int 0 [0x0])
(const_int 0 [0x0])
(const_int 0 [0x0])
])) 561 {*movv8hi_internal1} (nil)
(nil))
...and unfortunately remains in the loop from that point.
dorit
Daniel Jacobowitz
<drow@mvista.com> To: gcc-patches@gcc.gnu.org
Sent by: cc:
gcc-patches-owner@ Subject: Re: [lno] [patch] vectorizer update - support constants.
gcc.gnu.org
22/01/2004 21:04
On Thu, Jan 22, 2004 at 03:38:05PM +0200, Dorit Naishlos wrote:
> with vectorization:
>
> L6:
> vxor v0,v0,v0
> stvx v0,r9,r0
> L2:
> slwi r0,r2,4
> addi r2,r2,1
> bdnz L6
Silly question, but why isn't that moved out of the loop?
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer
More information about the Gcc-patches
mailing list