This is a follow up to JDK-8266550. This is refactoring in an attempt to fix JDK-6312651. This is extracted from: https://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/2019-May/033803.html
The goal of this one is to prevent code outside of the Type hierarchy from using the klass() accessor as once interfaces are properly supported a single klass pointer can't exhaustively represent a type.
The goal of this one is to prevent code outside of the Type hierarchy from using the klass() accessor as once interfaces are properly supported a single klass pointer can't exhaustively represent a type.
- relates to
- 
                    JDK-8310299 C2: 8275201 broke constant folding of array store check in some cases -           
- Resolved
 
-         
- 
                    JDK-8289161 Regressions 2-3% on some Renaissance after 8275201 -           
- Closed
 
-         
- 
                    JDK-8266550 C2: mirror TypeOopPtr/TypeInstPtr/TypeAryPtr with TypeKlassPtr/TypeInstKlassPtr/TypeAryKlassPtr -           
- Resolved
 
-         
- 
                    JDK-6312651 Compiler should only use verified interface types for optimization -           
- Closed
 
-         
- 
                    JDK-8287700 C2 Crash running eclipse benchmark from Dacapo -           
- Closed
 
-         
- 
                    JDK-8288968 C2: remove use of covariant returns in type.[ch]pp -           
- Closed
 
-         
             (1 relates to, 2 links to)
        
     
        