[LLVMdev] Force rematerialization
Ivan Llopard
ivanllopard at gmail.com
Wed Feb 22 06:33:07 PST 2012
Hi all,
I'd like to force rematerialization by extending live intervals. For
example:
%vreg1 = opa %vreg2, %vreg3 ; RClassA:%vreg1, RClassB:%vreg2, RClassB:%vreg3
...
somewhere between --> %vreg2<kill> and %vreg3<kill>
..
%vreg4 = opb %vreg1 ; RClassA:%vreg1, RClassB:%vreg4
In my case, %vreg1 is not spillable and I'd like to extend vreg2 and
vreg3 live intervals to get "opa" rematerialized. If I understand
correctly, the InlineSpiller only rematerializes if all the operands
values of "opa" reach "opb", right ?
How can I extend the live interval of some VR even if it was already
allocated ?
Thanks in advance,
Ivan
More information about the llvm-dev
mailing list