report_fatal_error("SSE register return with SSE disabled");
}
- // If the return value is an i1 and AVX-512 is enabled, we need
- // to do a fixup to make the copy legal.
- if (CopyVT == MVT::i1 && SrcReg == X86::AL && Subtarget->hasAVX512()) {
- // Need to copy to a GR32 first.
- // TODO: MOVZX isn't great here. We don't care about the upper bits.
- SrcReg = createResultReg(&X86::GR32RegClass);
- BuildMI(*FuncInfo.MBB, FuncInfo.InsertPt, DbgLoc,
- TII.get(X86::MOVZX32rr8), SrcReg).addReg(X86::AL);
- }
-
// If we prefer to use the value in xmm registers, copy it out as f80 and
// use a truncate to move it from fp stack reg to xmm reg.
if ((SrcReg == X86::FP0 || SrcReg == X86::FP1) &&