harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Apache Wiki <wikidi...@apache.org>
Subject [Harmony Wiki] Update of "Jitrino OPT/hlo api magic" by Mikhail Fursov
Date Tue, 13 May 2008 09:06:43 GMT
Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Harmony Wiki" for change notification.

The following page has been changed by Mikhail Fursov:
http://wiki.apache.org/harmony/Jitrino_OPT/hlo_api_magic

------------------------------------------------------------------------------
- The pass replaces known Java API method calls with predefined algorithms written with HIR.
+ ''' 'hlo_api_magics' ''' pass replaces known Java API method calls with predefined algorithms
written with HIR.
+ [[BR]][[BR]]
+ The optimization replaces calls to known API or VM-kernel methods with an optimized set
of HIR instructions.
+ [[BR]]
+ Notes: 
+ [[BR]]
+ If rewriting of a method requires low-level details about active platform instruction sets
use [:Jitirno_OPT/api_magic: LIR-based api_magic pass] 
+ [[BR]]
  
- If a call is being replaced with just a few instructions it should be done in the origin
api_magic pass in codegenerator. For the cases when a call should be replaced with a sub-graph
wit ha lot of different instructions including branches the replacement must be done in HLO
path due to at least two reasons:
-  * It is much easier to create and insert sub-graph into HIR rather than into LIR;
-  * After insertion new instructions can be optimized by other high-level optimizations.
(The effect is the same as for inlining)
+ Example of Java API methods that can be replaced with HIR templates:
+ {{{
+     java/lang/String.compareTo
+     java/lang/String.indexOf
+     java/lang/System.arraycopy
+ ...
+ }}}
  

Mime
View raw message