From: Hezi A. <he...@cs...> - 2002-07-30 10:41:05
|
I'm forwarding this question again, as I didn't get any reply for it and it's important for the performance of my write barrier implementation. --Hezi. ---------- Forwarded message ---------- Date: Wed, 24 Jul 2002 09:36:47 +0300 (IDT) From: Hezi Azatchi <he...@cs...> Reply-To: jik...@ww... To: jik...@ww... Subject: [Jikesrvm-researchers] subroutine call from IA32 assembler I wrote a write barrier in IA32 assembler which looks similar to that: ... if T0==0 jmp A else jmp END A: (relatively length) PIECE OF CODE END: My Problem: The whole above code is emitted in every aastore that appears in the compiled code although only part of the cases need to execute the relatively lengthy "PIECE OF CODE" (these cases will be known only in runtime of course). Can I save part of the code emission at compile time by using jump to assembler subroutine construct? How can I calculate the address of the bytecode I want to jump without emitting it?, i.e., How can I calculate the immediate that represent the address of the bytecode I should jump to. (I saw the bTarget/mTarget construct in the VM_Compiler, but still didn't understand how to use it). _______________________________________________ Jikesrvm-researchers mailing list Jik...@ww... http://www-124.ibm.com/developerworks/oss/mailman/listinfo/jikesrvm-researchers |