[all-commits] [llvm/llvm-project] 2c1dec: [X86] Break the loop in LowerReturn into 2 loops. ...
topperc via All-commits
all-commits at lists.llvm.org
Fri Jan 24 14:44:51 PST 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 2c1decc040db57ef05ff2e02f9f96131632edf79
https://github.com/llvm/llvm-project/commit/2c1decc040db57ef05ff2e02f9f96131632edf79
Author: Craig Topper <craig.topper at intel.com>
Date: 2020-01-24 (Fri, 24 Jan 2020)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] Break the loop in LowerReturn into 2 loops. NFCI
I believe for STRICT_FP I need to use a STRICT_FP_EXTEND for the extending to f80 for returning f32/f64 in 32-bit mode when SSE is enabled. The STRICT_FP_EXTEND node requires a Chain. I need to get that node onto the chain before any CopyToRegs are emitted. This is because all the CopyToRegs are glued and chained together. So I can't put a STRICT_FP_EXTEND on the chain between the glued nodes without also glueing the STRICT_ FP_EXTEND.
This patch moves all the extend creation to a first pass and then creates the copytoregs and fills out RetOps in a second pass.
Differential Revision: https://reviews.llvm.org/D72665
More information about the All-commits
mailing list