[all-commits] [llvm/llvm-project] d4ba11: [LegalizeTypes] Merge ExpandIntRes_LLROUND and Exp...
topperc via All-commits
all-commits at lists.llvm.org
Sun Nov 17 13:48:37 PST 2019
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: d4ba11ae3261bb0dc805d33fbe15e9591e926a33
https://github.com/llvm/llvm-project/commit/d4ba11ae3261bb0dc805d33fbe15e9591e926a33
Author: Craig Topper <craig.topper at gmail.com>
Date: 2019-11-17 (Sun, 17 Nov 2019)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
Log Message:
-----------
[LegalizeTypes] Merge ExpandIntRes_LLROUND and ExpandIntRes_LLRINT into one function that handles both. NFC
These too functions are were the same except for which libcall gets
emitted. Just merge them into one.
This is prep work for some other work including strict fp support.
Commit: 9b515b6dd919cbd67ba12c01530708c5617e288f
https://github.com/llvm/llvm-project/commit/9b515b6dd919cbd67ba12c01530708c5617e288f
Author: Craig Topper <craig.topper at gmail.com>
Date: 2019-11-17 (Sun, 17 Nov 2019)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
Log Message:
-----------
[LegalizeTypes] Remove PromoteFloat support form ExpandIntRes_LLROUND_LLRINT.
This code isn't exercised, and was in the wrong place. If we need
this, we would need to promote the type before figuring out which
libcall to use.
I'm choosing to remove it rather than fixing since we don't
support PromoteFloat for LRINT/LROUND/LLRINT/LLROUND when the
result type is legal so I don't see much reason to support it
for the case where the result type isn't legal.
Commit: 1b0efe2b1778e821aade88667b1cb82d1c93f7e9
https://github.com/llvm/llvm-project/commit/1b0efe2b1778e821aade88667b1cb82d1c93f7e9
Author: Craig Topper <craig.topper at gmail.com>
Date: 2019-11-17 (Sun, 17 Nov 2019)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
Log Message:
-----------
[LegalizeTypes] When expanding the integer result of LLROUND/LLRINT, also call GetSoftenedFloat if the floating point input needs to be softened.
Before this we were emitting a bitcast to integer from the lowering
code that itself will need to be legalized. By calling
GetSoftenedFloat we get the integer conversion in one step without
needing to relegalize a bitcast.
Compare: https://github.com/llvm/llvm-project/compare/8eeabbaf5da3...1b0efe2b1778
More information about the All-commits
mailing list