-
Bug
-
Resolution: Fixed
-
P4
-
port-stage-ppc-aix
-
None
-
master
-
ppc
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8033038 | 9 | Goetz Lindenmaier | P4 | Resolved | Fixed | b04 |
JDK-8045340 | 8u25 | Goetz Lindenmaier | P4 | Resolved | Fixed | b01 |
JDK-8038538 | 8u20 | Goetz Lindenmaier | P4 | Resolved | Fixed | b08 |
JDK-8053449 | emb-8u26 | Goetz Lindenmaier | P4 | Resolved | Fixed | b17 |
C2 Call nodes use several constant values. So far C2 does not
support placing these values in the constant table of the nmethod.
Among others, these constants are
- the called address
- the inline cache
- values required by the C-calling convention (on PPC, env pointer
and toc from function descriptor)
This change extends Call nodes so that they can issue constants
to the constant table.
- Extend adlc to add edge to MachConstantBaseNode if
$constanttablebase is used in the specification.
- Extend Call nodes to deliver proper register mask to
register allocation for this new input.
- Add method ins_num_consts() so that number of required
constants can be specified in the call node.
- Extend output() so that it reserves space for the
constants in the Calls, using ins_num_consts().
----------------------------
This is preparation for PPC64 integration: http://openjdk.java.net/jeps/175
This and following ppc64 changes will go into staging repository first and tested there: http://hg.openjdk.java.net/ppc-aix-port/stage/
As we basically redesigned this, it comprises two of the original patches:
http://hg.openjdk.java.net/ppc-aix-port/jdk8/hotspot/file/338e318f1e12/ppc_patches/0114_opto-hook_to_postprocess_matcher_output_platform_dependent.patch
http://hg.openjdk.java.net/ppc-aix-port/jdk8/hotspot/file/338e318f1e12/ppc_patches/0120_opto-constants_for_Call_nodes.patch
support placing these values in the constant table of the nmethod.
Among others, these constants are
- the called address
- the inline cache
- values required by the C-calling convention (on PPC, env pointer
and toc from function descriptor)
This change extends Call nodes so that they can issue constants
to the constant table.
- Extend adlc to add edge to MachConstantBaseNode if
$constanttablebase is used in the specification.
- Extend Call nodes to deliver proper register mask to
register allocation for this new input.
- Add method ins_num_consts() so that number of required
constants can be specified in the call node.
- Extend output() so that it reserves space for the
constants in the Calls, using ins_num_consts().
----------------------------
This is preparation for PPC64 integration: http://openjdk.java.net/jeps/175
This and following ppc64 changes will go into staging repository first and tested there: http://hg.openjdk.java.net/ppc-aix-port/stage/
As we basically redesigned this, it comprises two of the original patches:
http://hg.openjdk.java.net/ppc-aix-port/jdk8/hotspot/file/338e318f1e12/ppc_patches/0114_opto-hook_to_postprocess_matcher_output_platform_dependent.patch
http://hg.openjdk.java.net/ppc-aix-port/jdk8/hotspot/file/338e318f1e12/ppc_patches/0120_opto-constants_for_Call_nodes.patch
- backported by
-
JDK-8033038 PPC64 (part 114/120): Support for Call nodes with constants.
- Resolved
-
JDK-8038538 PPC64 (part 114/120): Support for Call nodes with constants.
- Resolved
-
JDK-8045340 PPC64 (part 114/120): Support for Call nodes with constants.
- Resolved
-
JDK-8053449 PPC64 (part 114/120): Support for Call nodes with constants.
- Resolved