This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [RFC] [autovect patch] Implement vectorization hints
- From: Daniel Berlin <dberlin at dberlin dot org>
- To: Devang Patel <dpatel at apple dot com>
- Cc: GCC Patches <gcc-patches at gcc dot gnu dot org>
- Date: Tue, 01 Mar 2005 22:46:11 -0500
- Subject: Re: [RFC] [autovect patch] Implement vectorization hints
- References: <CFE651BB-3353-4BA5-9727-F250F1767000@apple.com> <20050227212251.GB19931@atrey.karlin.mff.cuni.cz> <7C433DE9-3EAC-49C3-BFAF-CC6AC3257DC3@apple.com> <20050227214815.GA1663@atrey.karlin.mff.cuni.cz> <19DEA035-DC34-4129-8BC9-AA35B602579D@apple.com> <DE805C9A-DA7E-40EE-808E-78DA4C06E9FC@apple.com>
> One approach is to use loop structure to keep pragma info instead of
> relying on source location only. However it does not provide much help
> to answer above question. And add possibility of GCC doing loop
> distribution, loop fusion etc.. in future. Plus one additional
> difficulty with using loop structure approach is the fact that loop
> info is not maintained wire-to-wire. During gimplification, loop
> structure is dismantled in favor of if-gotos. Various passes optimizes
> GIMPLE before loop optimizer recreates loop. So question is - How to
> map new loops to source level loops?
Just FYI, xlc associates the info with the loop in a loop table (the
frontend creates the initial loop table), and keeps the loop table up to
date forever onwards :)