--- a/hotspot/src/cpu/sparc/vm/sparc.ad Tue Aug 05 15:02:10 2014 -0700
+++ b/hotspot/src/cpu/sparc/vm/sparc.ad Wed Aug 06 08:47:40 2014 +0200
@@ -6184,7 +6184,11 @@
ins_cost(DEFAULT_COST * 3/2);
format %{ "SET $con,$dst\t! non-oop ptr" %}
ins_encode %{
- __ set($con$$constant, $dst$$Register);
+ if (_opnds[1]->constant_reloc() == relocInfo::metadata_type) {
+ __ set_metadata_constant((Metadata*)$con$$constant, $dst$$Register);
+ } else {
+ __ set($con$$constant, $dst$$Register);
+ }
%}
ins_pipe(loadConP);
%}