[all-commits] [llvm/llvm-project] 3e0f30: [SPARC] Zero-extend the operands when doing UMULO ...
Koakuma via All-commits
all-commits at lists.llvm.org
Sun Nov 14 11:00:06 PST 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 3e0f3041cc1abe977edd288525c62da8c28219e5
https://github.com/llvm/llvm-project/commit/3e0f3041cc1abe977edd288525c62da8c28219e5
Author: Koakuma <koachan at protonmail.com>
Date: 2021-11-14 (Sun, 14 Nov 2021)
Changed paths:
M llvm/lib/Target/Sparc/SparcISelLowering.cpp
M llvm/test/CodeGen/SPARC/64cond.ll
A llvm/test/CodeGen/SPARC/smulo-128-legalisation-lowering.ll
M llvm/test/CodeGen/SPARC/umulo-128-legalisation-lowering.ll
Log Message:
-----------
[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
More information about the All-commits
mailing list