------- Comment #2 from irar at il dot ibm dot com 2007-07-11 14:50 ------- I don't get any dependence test failures on current mainline. I think they were solved by Zdenek's rewrite of data-refs' analysis, since I can still see those failures on autovect-branch (with old data-refs' analysis):
unal.f:222: note: not vectorized: can't determine dependence between csfsavloc.savfrc[D.2175_919] and csfsavloc.savfrc[D.2388_922] unal.f:159: note: not vectorized: can't determine dependence between aux01loc.fm11[D.2175_330] and aux01loc.fm11[D.2175_330] unal.f:172: note: not vectorized: can't determine dependence between aux01loc.ft11[D.2175_439] and aux01loc.ft11[D.2175_439] On the mainline unal.f:222 gets vectorized now, and unal.f:159 and unal.f:172 are not vectorized because unsupported unaligned stores: unal.f:222: note: LOOP VECTORIZED.(get_loop_exit_condition unal.f:198: note: LOOP VECTORIZED. unal.f:209: note: not vectorized: unsupported unaligned store. unal.f:159: note: not vectorized: unsupported unaligned store. unal.f:172: note: not vectorized: unsupported unaligned store. unal.f:138: note: not vectorized: unsupported unaligned store. unal.f:127: note: not vectorized: unsupported unaligned store. With loop distribution we could vectorize these loops using peeling to handle misaligned stores (multiple stores make peeling for alignment insufficient here). Misaligned stores support is on the top of our TODO list in Wiki (see http://gcc.gnu.org/wiki/VectorizationTasks)... I am adding "missed-optimization" keyword and changing the summary. Thanks, Ira -- irar at il dot ibm dot com changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |irar at il dot ibm dot com Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Keywords| |missed-optimization Last reconfirmed|0000-00-00 00:00:00 |2007-07-11 14:50:36 date| | Summary|reports "unaligned store" |misaligned stores don't get |and can't determine |vectorized |dependence | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32380