-
Bug
-
Resolution: Fixed
-
P4
-
25
-
b21
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8362606 | 21.0.9-oracle | Jayashree Kumar | P4 | Resolved | Fixed | b03 |
JDK-8364528 | 17.0.18-oracle | Jayashree Kumar | P4 | Resolved | Fixed | master |
Currently, JITTester's love to downcast often produces something like this:
ArrayList<Integer> someVar = (TreeSet)(Object)(List)(new ArrayList<Integer>());
... which is possible because it goes up to Object and then starts downcasting to some totally unrelated class / type.
Considering the JITTester's love to casts (they are more-or-less 'safe' expressions), it means a high probability (30-50%) of a gentest to fail compilation. Even worse is the situation for ByteCode tests - that they're faulty is only recognized during the run phase.
I suggest to disable the downcasts.
Failure mode: stderr is non empty:
===== Test_954.BASIC.err ====
1d0
< Java HotSpot(TM) 64-Bit Server VM warning: outputStream::do_vsnprintf output truncated -- buffer length is 2000 bytes but 22852 bytes are needed.
ArrayList<Integer> someVar = (TreeSet)(Object)(List)(new ArrayList<Integer>());
... which is possible because it goes up to Object and then starts downcasting to some totally unrelated class / type.
Considering the JITTester's love to casts (they are more-or-less 'safe' expressions), it means a high probability (30-50%) of a gentest to fail compilation. Even worse is the situation for ByteCode tests - that they're faulty is only recognized during the run phase.
I suggest to disable the downcasts.
Failure mode: stderr is non empty:
===== Test_954.BASIC.err ====
1d0
< Java HotSpot(TM) 64-Bit Server VM warning: outputStream::do_vsnprintf output truncated -- buffer length is 2000 bytes but 22852 bytes are needed.
- backported by
-
JDK-8362606 [jittester] Disable downcasts by default
-
- Resolved
-
-
JDK-8364528 [jittester] Disable downcasts by default
-
- Resolved
-
- links to
-
Commit(master) openjdk/jdk/b41e0b17
-
Review(master) openjdk/jdk/24840