Mercurial > hg > truffle
comparison src/share/vm/graal/graalCodeInstaller.cpp @ 4229:8074251d1e05
Fix bug in code installer that caused builds with assertions to crash
author | Gilles Duboscq <gilles.m.duboscq@gmail.com> |
---|---|
date | Thu, 05 Jan 2012 17:25:28 +0100 |
parents | e0a4668c57a2 |
children | 382523fc390c |
comparison
equal
deleted
inserted
replaced
4228:e872562f95f8 | 4229:8074251d1e05 |
---|---|
791 *((jobject*) operand) = JNIHandles::make_local(java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(obj))); | 791 *((jobject*) operand) = JNIHandles::make_local(java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(obj))); |
792 _instructions->relocate(instruction, oop_Relocation::spec_for_immediate(), Assembler::imm_operand); | 792 _instructions->relocate(instruction, oop_Relocation::spec_for_immediate(), Assembler::imm_operand); |
793 TRACE_graal_3("relocating (HotSpotType) at %016x/%016x", instruction, operand); | 793 TRACE_graal_3("relocating (HotSpotType) at %016x/%016x", instruction, operand); |
794 } else { | 794 } else { |
795 jobject value = JNIHandles::make_local(obj()); | 795 jobject value = JNIHandles::make_local(obj()); |
796 if (obj() == HotSpotProxy::DUMMY_CONSTANT_OBJ()) { | |
797 value = (jobject) Universe::non_oop_word(); | |
798 } | |
796 *((jobject*) operand) = value; | 799 *((jobject*) operand) = value; |
797 _instructions->relocate(instruction, oop_Relocation::spec_for_immediate(), Assembler::imm_operand); | 800 _instructions->relocate(instruction, oop_Relocation::spec_for_immediate(), Assembler::imm_operand); |
798 TRACE_graal_3("relocating (oop constant) at %016x/%016x", instruction, operand); | 801 TRACE_graal_3("relocating (oop constant) at %016x/%016x", instruction, operand); |
799 } | 802 } |
800 break; | 803 break; |