RFR: 8256205: Simplify compiler calling convention handling

Claes Redestad redestad at openjdk.java.net
Wed Nov 11 18:55:00 UTC 2020


Clean up and simplify some of the calling convention handling:

- Remove Matcher::calling_convention/c_calling_convention and replace select few call sites with direct calls to SharedRuntime
- Remove unused is_outgoing args. Since the SPARC removal the is_outgoing has no effect on the calling_convention or return_value methods.
- Move in_preserved_stack_slots to SharedRuntime to match out_preserved_stack_slots. 

This has a tiny positive impact by reducing calls and improving inlining (at least gcc has a hard time inlining anything that goes in the .ad files, even when it's defined to the same class), but is mainly a cleanup effort.

Testing: Oracle tier1-2 testing; S390, PPC and ARM32 builds

-------------

Commit messages:
 - trailing whitespace
 - Merge branch 'master' into call_conv
 - Merge branch 'master' into call_conv
 - Remove in_preserve_stack_slots to SharedRuntime
 - Fix missing return_value fixup
 - Drop out_preserve_stack_slots from adlc output
 - Clean-up calling_convention handling

Changes: https://git.openjdk.java.net/jdk/pull/1168/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=1168&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8256205
  Stats: 359 lines in 31 files changed: 54 ins; 255 del; 50 mod
  Patch: https://git.openjdk.java.net/jdk/pull/1168.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/1168/head:pull/1168

PR: https://git.openjdk.java.net/jdk/pull/1168


More information about the hotspot-compiler-dev mailing list