| Prepared by: | Thomas Rodriguez (never) on Fri Oct 3 11:52:40 PDT 2008 |
|---|---|
| Workspace: | /export/ws/peel |
| Compare against: | http://hg.openjdk.java.net/jdk7/hotspot-comp/hotspot |
| Summary of changes: | 31 lines changed: 11 ins; 3 del; 17 mod; 5417 unchg |
| Patch of changes: | 6743188.patch |
| Author comments: |
6743188: incomplete fix for 6700047 C2 failed in idom_no_update Reviewed-by: rasbold The fix for 6700047 only checks the direct control of the node which is insufficient to fix this in all cases. During a conversation with Ross he mentioned that his original intent was to stop further loop optimizations but the way it was structured it only stopped it for contained loops. I decided the best fix was to make it really stop further loop optimizations instead of trying to correct the cloning logic. I removed the change from loopopts.cpp that tried to find a better placement. This leaves that logic effectively the same as before though I kept the restructuring I did since I think it's cleaner. The original fix can be viewed at http://hg.openjdk.java.net/jdk7/hotspot-comp/hotspot/rev/020a0b730379. iteration split now returns a flag indicating whether to continue optimization. I also updated the test case. |
| Legend: |
Modified file Deleted file New file |
Cdiffs
Udiffs
Sdiffs
Frames
Old
New
Patch
Raw
src/share/vm/opto/loopTransform.cpp
18 lines changed: 6 ins; 0 del; 12 mod; 1728 unchg
Cdiffs
Udiffs
Sdiffs
Frames
Old
New
Patch
Raw
src/share/vm/opto/loopnode.hpp
7 lines changed: 2 ins; 0 del; 5 mod; 917 unchg
Cdiffs
Udiffs
Sdiffs
Frames
Old
New
Patch
Raw
src/share/vm/opto/loopopts.cpp
3 lines changed: 0 ins; 3 del; 0 mod; 2712 unchg
Cdiffs
Udiffs
Sdiffs
Frames
Old
New
Patch
Raw
test/compiler/6700047/Test6700047.java
3 lines changed: 3 ins; 0 del; 0 mod; 60 unchg
This code review page was prepared using /net/smite.sfbay/never/bin/hgwebrev (vers 23.12-hg-never).