Missing analysis in MCJIT?

Bader, Aleksey A aleksey.a.bader at intel.com
Tue Apr 1 06:51:34 PDT 2014


Hi,

It looks like MCJIT::emitObject is missing target specific analysis passes to do efficient code generation.

Codegen runs several preparation passes including Loop Strength Reduction, which hoists some computations out of the loop increasing register pressure, which leads to register spills on 32-bit platform. In order to estimate the profitability of the modification this pass uses TargetTransformInfo analysis data. My understanding is that NoTargetTransformInfo pass is created by default and it is not good enough for efficient code generation. This fix introduces target-specific passes, which provide correct cost of modifications.

Does it make sense?
- Alexey

--------------------------------------------------------------------
Closed Joint Stock Company Intel A/O
Registered legal address: Krylatsky Hills Business Park, 
17 Krylatskaya Str., Bldg 4, Moscow 121614, 
Russian Federation

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140401/17872c63/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: analysis.diff
Type: application/octet-stream
Size: 405 bytes
Desc: analysis.diff
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140401/17872c63/attachment.obj>


More information about the llvm-commits mailing list