diff options
author | simonis <none@none> | 2016-06-14 19:48:30 +0200 |
---|---|---|
committer | simonis <none@none> | 2016-06-14 19:48:30 +0200 |
commit | ccb3aa64627d51645d9f7562f68a57ab4cb17b12 (patch) | |
tree | c52a90c7d6633065bcb6f6e5ec597392b974d376 | |
parent | 364b81ee1fa7827ec231d809960e8c83cf2ed34c (diff) | |
download | jdk8u_hotspot-ccb3aa64627d51645d9f7562f68a57ab4cb17b12.tar.gz |
8158260: PPC64: unaligned Unsafe.getInt can lead to the generation of illegal instructions
Summary: Adjust instruction generation.
Reviewed-by: goetz
Contributed-by: gromero@linux.vnet.ibm.com, horii@jp.ibm.com
-rw-r--r-- | src/cpu/ppc/vm/ppc.ad | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/cpu/ppc/vm/ppc.ad b/src/cpu/ppc/vm/ppc.ad index b3ca8ad9c..54c236101 100644 --- a/src/cpu/ppc/vm/ppc.ad +++ b/src/cpu/ppc/vm/ppc.ad @@ -5469,7 +5469,7 @@ instruct loadUI2L(iRegLdst dst, memory mem, immL_32bits mask) %{ %} // Match loading integer and casting it to long. -instruct loadI2L(iRegLdst dst, memory mem) %{ +instruct loadI2L(iRegLdst dst, memoryAlg4 mem) %{ match(Set dst (ConvI2L (LoadI mem))); predicate(_kids[0]->_leaf->as_Load()->is_unordered()); ins_cost(MEMORY_REF_COST); @@ -5485,7 +5485,7 @@ instruct loadI2L(iRegLdst dst, memory mem) %{ %} // Match loading integer and casting it to long - acquire. -instruct loadI2L_ac(iRegLdst dst, memory mem) %{ +instruct loadI2L_ac(iRegLdst dst, memoryAlg4 mem) %{ match(Set dst (ConvI2L (LoadI mem))); ins_cost(3*MEMORY_REF_COST); |