[AArch64] What is the function of the 2nd return value parameter of the WhileWR interface?


ISEL: Starting selection on root node: t6: nxv16i1,ch = llvm.aarch64.sve.whilerw.b t0, TargetConstant:i64<1312>, t2, t4
ISEL: Starting pattern match
  Morphed node: t6: nxv16i1,i32,ch = WHILERW_PXX_B t2, t4, t0
ISEL: Match complete!

===== Instruction selection ends:
Selected selection DAG: %bb.0 'whilerw_i8:'
SelectionDAG has 9 nodes:
  t0: ch,glue = EntryToken
    t2: i64,ch = CopyFromReg t0, Register:i64 %0
    t4: i64,ch = CopyFromReg t0, Register:i64 %1
  t6: nxv16i1,i32,ch = WHILERW_PXX_B t2, t4, t0
  t8: ch,glue = CopyToReg t6:2, Register:nxv16i1 $p0, t6
  t9: ch = RET_ReallyLR Register:nxv16i1 $p0, t8, t8:1

Total amount of phi nodes to update: 0
*** MachineFunction at end of ISel ***
# Machine code for function whilerw_i8: IsSSA, TracksLiveness
Function Live Ins: $x0 in %0, $x1 in %1

bb.0 (%ir-block.0):
  liveins: $x0, $x1
  %1:gpr64 = COPY $x1
  %0:gpr64 = COPY $x0
  %2:ppr = WHILERW_PXX_B %0:gpr64, %1:gpr64, implicit-def dead $nzcv
  $p0 = COPY %2:ppr
  RET_ReallyLR implicit $p0