[PATCH] D57393: [InlineAsm][X86] Add backend support for X86 flag output parameters.

Thomas Preud'homme via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jan 29 14:57:35 PST 2019


thopre added a comment.

FYI: only reviewed the SelectionDAGBuilder parts.



================
Comment at: llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp:7667
                  OpInfo.ConstraintType == TargetLowering::C_RegisterClass) {
         // Otherwise, this is a register or register class output.
 
----------------
Please update this comment


================
Comment at: llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp:7898
+        Val = OpInfo.AssignedRegs.getCopyFromRegs(
+            DAG, FuncInfo, getCurSDLoc(), Chain, &Flag, CS.getInstruction());
+        break;
----------------
Previous code was using IA (that is the output of getCalledValue on the CallSite) rather than the instruction. From what I saw your change is correct as this parameter only gets used indirectly in diagnosePossiblyInvalidConstraint which expects an instruction. Can you confirm?


================
Comment at: llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp:7910
+
+      // Indirect output are manifest as stores. Record output chains.
       if (OpInfo.isIndirect) {
----------------
are manifest -> manifest


Repository:
  rL LLVM

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D57393/new/

https://reviews.llvm.org/D57393





More information about the llvm-commits mailing list