Displaying 1 result from an estimated 1 matches for "sextw".
Did you mean:
sext
2009 Apr 20
4
[LLVMdev] Unnecessary moves after sign-extension in 2-address target
...; <i32> [#uses=1]
%add = add i32 %conv1, %c ; <i32> [#uses=1]
%add6 = add i32 %add, %conv4 ; <i32> [#uses=1]
ret i32 %add6
}
And this not-so-great assembler code:
sext:
sextb r1
mov r4,r1 ### unnecessary move
add r4,r3
sextw r2
mov r1,r2 ### unnecessary move
add r1,r4
jmp [r30]
Which should be this:
sext:
sextb r1
add r1,r3
sextw r2
add r1,r2
jmp [r30]
The debug output from LLVM shows this:
********** REWRITING TWO-ADDR INSTRS **********
********** Function: sext
%reg1028<...