Mercurial > hg > truffle
comparison src/share/vm/graal/graalCodeInstaller.cpp @ 16520:9a07bf8467a6
[SPARC] Implement floatingpoint branch instructions, removing math substitutions for SPARC; fixing problems with constants in debug info (Big/Little Endian problems)
author | Stefan Anzinger <stefan.anzinger@gmail.com> |
---|---|
date | Sun, 13 Jul 2014 17:46:57 -0700 |
parents | 39be5bc00046 |
children | a2ec1ac769e4 8c70d65ec04a |
comparison
equal
deleted
inserted
replaced
16519:2b91702c4e69 | 16520:9a07bf8467a6 |
---|---|
265 } | 265 } |
266 return value; | 266 return value; |
267 } else if (value->is_a(Constant::klass())){ | 267 } else if (value->is_a(Constant::klass())){ |
268 record_metadata_in_constant(value, oop_recorder); | 268 record_metadata_in_constant(value, oop_recorder); |
269 if (type == T_INT || type == T_FLOAT || type == T_SHORT || type == T_CHAR || type == T_BOOLEAN || type == T_BYTE) { | 269 if (type == T_INT || type == T_FLOAT || type == T_SHORT || type == T_CHAR || type == T_BOOLEAN || type == T_BYTE) { |
270 jlong prim = PrimitiveConstant::primitive(value); | 270 jint prim = (jint)PrimitiveConstant::primitive(value); |
271 return new ConstantIntValue(*(jint*)&prim); | 271 return new ConstantIntValue(prim); |
272 } else if (type == T_LONG || type == T_DOUBLE) { | 272 } else if (type == T_LONG || type == T_DOUBLE) { |
273 jlong prim = PrimitiveConstant::primitive(value); | 273 jlong prim = PrimitiveConstant::primitive(value); |
274 second = new ConstantIntValue(0); | 274 second = new ConstantIntValue(0); |
275 return new ConstantLongValue(prim); | 275 return new ConstantLongValue(prim); |
276 } else if (type == T_OBJECT) { | 276 } else if (type == T_OBJECT) { |