[Target] Prevent copying in loop variables (NFC)

/data/llvm-project/llvm/lib/Target/Lanai/LanaiISelLowering.cpp:715:19: error: loop variable '[Reg, N]' creates a copy from type 'std::pair<unsigned int, llvm::SDValue> const' [-Werror,-Wrange-loop-construct]
  for (const auto [Reg, N] : RegsToPass) {
                  ^
/data/llvm-project/llvm/lib/Target/Lanai/LanaiISelLowering.cpp:715:8: note: use reference type 'std::pair<unsigned int, llvm::SDValue> const &' to prevent copying
  for (const auto [Reg, N] : RegsToPass) {
       ^~~~~~~~~~~~~~~~~~~~~
                  &
/data/llvm-project/llvm/lib/Target/Lanai/LanaiISelLowering.cpp:747:19: error: loop variable '[Reg, N]' creates a copy from type 'std::pair<unsigned int, llvm::SDValue> const' [-Werror,-Wrange-loop-construct]
  for (const auto [Reg, N] : RegsToPass)
                  ^
/data/llvm-project/llvm/lib/Target/Lanai/LanaiISelLowering.cpp:747:8: note: use reference type 'std::pair<unsigned int, llvm::SDValue> const &' to prevent copying
  for (const auto [Reg, N] : RegsToPass)
       ^~~~~~~~~~~~~~~~~~~~~
                  &
2 errors generated.
This commit is contained in:
Jie Fu
2025-06-30 15:50:04 +08:00
parent 8602204d9f
commit 834c410d9d
4 changed files with 8 additions and 8 deletions

View File

@@ -712,7 +712,7 @@ SDValue LanaiTargetLowering::LowerCCCCallTo(
// Build a sequence of copy-to-reg nodes chained together with token chain and
// flag operands which copy the outgoing args into registers. The InGlue in
// necessary since all emitted instructions must be stuck together.
for (const auto [Reg, N] : RegsToPass) {
for (const auto &[Reg, N] : RegsToPass) {
Chain = DAG.getCopyToReg(Chain, DL, Reg, N, InGlue);
InGlue = Chain.getValue(1);
}
@@ -744,7 +744,7 @@ SDValue LanaiTargetLowering::LowerCCCCallTo(
// Add argument registers to the end of the list so that they are
// known live into the call.
for (const auto [Reg, N] : RegsToPass)
for (const auto &[Reg, N] : RegsToPass)
Ops.push_back(DAG.getRegister(Reg, N.getValueType()));
if (InGlue.getNode())

View File

@@ -768,7 +768,7 @@ SDValue MSP430TargetLowering::LowerCCCCallTo(
// flag operands which copy the outgoing args into registers. The InGlue in
// necessary since all emitted instructions must be stuck together.
SDValue InGlue;
for (const auto [Reg, N] : RegsToPass) {
for (const auto &[Reg, N] : RegsToPass) {
Chain = DAG.getCopyToReg(Chain, dl, Reg, N, InGlue);
InGlue = Chain.getValue(1);
}
@@ -789,7 +789,7 @@ SDValue MSP430TargetLowering::LowerCCCCallTo(
// Add argument registers to the end of the list so that they are
// known live into the call.
for (const auto [Reg, N] : RegsToPass)
for (const auto &[Reg, N] : RegsToPass)
Ops.push_back(DAG.getRegister(Reg, N.getValueType()));
if (InGlue.getNode())

View File

@@ -738,7 +738,7 @@ SDValue VETargetLowering::LowerCall(TargetLowering::CallLoweringInfo &CLI,
// necessary since all emitted instructions must be stuck together in order
// to pass the live physical registers.
SDValue InGlue;
for (const auto [Reg, N] : RegsToPass) {
for (const auto &[Reg, N] : RegsToPass) {
Chain = DAG.getCopyToReg(Chain, DL, Reg, N, InGlue);
InGlue = Chain.getValue(1);
}
@@ -746,7 +746,7 @@ SDValue VETargetLowering::LowerCall(TargetLowering::CallLoweringInfo &CLI,
// Build the operands for the call instruction itself.
SmallVector<SDValue, 8> Ops;
Ops.push_back(Chain);
for (const auto [Reg, N] : RegsToPass)
for (const auto &[Reg, N] : RegsToPass)
Ops.push_back(DAG.getRegister(Reg, N.getValueType()));
// Add a register mask operand representing the call-preserved registers.

View File

@@ -1064,7 +1064,7 @@ SDValue XCoreTargetLowering::LowerCCCCallTo(
// The InGlue in necessary since all emitted instructions must be
// stuck together.
SDValue InGlue;
for (const auto [Reg, N] : RegsToPass) {
for (const auto &[Reg, N] : RegsToPass) {
Chain = DAG.getCopyToReg(Chain, dl, Reg, N, InGlue);
InGlue = Chain.getValue(1);
}
@@ -1088,7 +1088,7 @@ SDValue XCoreTargetLowering::LowerCCCCallTo(
// Add argument registers to the end of the list so that they are
// known live into the call.
for (const auto [Reg, N] : RegsToPass)
for (const auto &[Reg, N] : RegsToPass)
Ops.push_back(DAG.getRegister(Reg, N.getValueType()));
if (InGlue.getNode())