JDK-8014786 : Cleaning up the split code in the register allocator of C2
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 9,10
  • Priority: P5
  • Status: Closed
  • Resolution: Won't Fix
  • Submitted: 2013-05-17
  • Updated: 2017-04-07
  • Resolved: 2017-04-07
Related Reports
Relates :  
Relates :  
Description
This is an important step in order to actually improve the spill heuristics ( which is bug https://jbs.oracle.com/bugs/browse/JDK-7022320 ). 

By cleaning up the existing code we can get a better understanding of what's happening and hopefully find things to improve. Dead code is removed and the main method Split() will instead be a class consisting of many functions in order to improve readability and isolate the code from the rest of the register allocator. 
Comments
The register allocator code is highly complex and refactoring is risky. Added wnf-candidate label because cost-benefit ratio is not clear.
25-01-2017