-
- Downloads
[SPARC] Zero-extend the operands when doing UMULO on 64-bit integers
On SPARC, S/UMULO operation on 64-bit integers works by extending the value to 128-bit, then doing a multiplication and checking the upper half of the result. This makes UMULO works correctly by putting a zero in the upper half rather than doing a sign extension. Reviewed By: LemonBoy Differential Revision: https://reviews.llvm.org/D110555
Showing
- llvm/lib/Target/Sparc/SparcISelLowering.cpp 9 additions, 2 deletionsllvm/lib/Target/Sparc/SparcISelLowering.cpp
- llvm/test/CodeGen/SPARC/64cond.ll 2 additions, 2 deletionsllvm/test/CodeGen/SPARC/64cond.ll
- llvm/test/CodeGen/SPARC/smulo-128-legalisation-lowering.ll 257 additions, 0 deletionsllvm/test/CodeGen/SPARC/smulo-128-legalisation-lowering.ll
- llvm/test/CodeGen/SPARC/umulo-128-legalisation-lowering.ll 20 additions, 19 deletionsllvm/test/CodeGen/SPARC/umulo-128-legalisation-lowering.ll
Loading
Please register or sign in to comment