Hi,

I have noticed some strange loads in the bytecode (rev34071).
They look like unnecessary.

Here it is a simple js:

  var a, b;
  a = 5;
  b = a * a + a;

And the bytecode output was with 'testkjs -d -f 1.js':

9 instructions; 224 bytes at 0x69ca30; 2 locals (0 parameters); 2 temporaries

[   0] load              lr6, undefined(@k0)            
[   3] load              lr7, undefined(@k0)            
[   6] load              tr0, undefined(@k0)            
[   9] load              lr6, 5(@k1)            
[  12] mov               tr0, lr6
[  15] mul               tr1, lr6, lr6
[  19] add               lr7, tr1, lr6
[  23] mov               tr0, lr7
[  26] end               tr0

Constants:
   k0 = undefined
   k1 = 5

End: 30


These instructions are unnecessary, aren't they?
Or is there a technical explanation of them?



--Gabor

_______________________________________________
webkit-dev mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev

Reply via email to