harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nikolay Kurtov" <nkur...@gmail.com>
Subject [drlvm][jitrino]Difference in bc-mapping after translator
Date Tue, 11 Mar 2008 19:29:47 GMT
I compiled the same class with JET and OPT, and found a difference in
bytecode-mapping

One of branches of switch goes to this code:
;;  58) ILOAD_0
;;  59) BIPUSH          45
;;  61) IADD
;;  62) I2B
;;  63) ISTORE_1
....
So, after the recompilation by OPT, the block should begin from bcOffset 58

In OPT after translator I found in irdump the following block
Block L5:
  Predecessors: ENTRY_L0
  Successors: L8
  I5:L5: bcmap:59
  I34:ldci4     #45 -) t14:int32
  I35:add   t1, t14 -) t15:int32
  I36:convi1  t15 -) t16:int32
  I37:stvar     t16 -) v1:int32
....

The block begins from bcOffset 59
I consider these values in JET and OPT should be equal.
Is it a bug?

Now I'm exploring the code of JavaByteCodeTranslator and IRBuilder but
cannot figure out the cause of problem
Can you advise me how to fix it?

-- 
Regards,
Nikolay

mailto: nkurtov@gmail.com

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message