[LLVMdev] Help with promotion/custom handling of MUL i32 and MUL i64

Tim Northover t.p.northover at gmail.com
Tue Jul 30 23:38:31 PDT 2013

Hi Dan,

If you set the node's action to "Custom", you should be able to
interfere in the type legalisation phase (before it gets promoted to a
64-bit MUL) by overriding the "ReplaceNodeResults" function.

You could either expand it to a different libcall directly there, or
replace it with a target-specific node (say XXXISD::MUL32) which
claims to take i64 types but you really know is the 32-bit multiply.
Then you'd have to take care of that node elsewhere, of course.



More information about the llvm-dev mailing list