Skip to content

Commit 48e54f3

Browse files
authored
[CostModel] Mark all TTIImpls as final. NFC (#143404)
In the AArch64 version this helps reduce the number of blr instruction (indirect jumps) in from 325 to 87, and reduces the size of the object file by 4%. It seems to help make the code more efficient even if it doesn't greatly affect compile time. The AMDGPU variants are already marked as final.
1 parent 30a41a6 commit 48e54f3

16 files changed

+16
-16
lines changed

llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ class Type;
3939
class Value;
4040
class VectorType;
4141

42-
class AArch64TTIImpl : public BasicTTIImplBase<AArch64TTIImpl> {
42+
class AArch64TTIImpl final : public BasicTTIImplBase<AArch64TTIImpl> {
4343
using BaseT = BasicTTIImplBase<AArch64TTIImpl>;
4444
using TTI = TargetTransformInfo;
4545

llvm/lib/Target/ARC/ARCTargetTransformInfo.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ class ARCSubtarget;
2626
class ARCTargetLowering;
2727
class ARCTargetMachine;
2828

29-
class ARCTTIImpl : public BasicTTIImplBase<ARCTTIImpl> {
29+
class ARCTTIImpl final : public BasicTTIImplBase<ARCTTIImpl> {
3030
using BaseT = BasicTTIImplBase<ARCTTIImpl>;
3131
friend BaseT;
3232

llvm/lib/Target/ARM/ARMTargetTransformInfo.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ namespace TPLoop {
5454
enum MemTransfer { ForceDisabled = 0, ForceEnabled, Allow };
5555
}
5656

57-
class ARMTTIImpl : public BasicTTIImplBase<ARMTTIImpl> {
57+
class ARMTTIImpl final : public BasicTTIImplBase<ARMTTIImpl> {
5858
using BaseT = BasicTTIImplBase<ARMTTIImpl>;
5959
using TTI = TargetTransformInfo;
6060

llvm/lib/Target/BPF/BPFTargetTransformInfo.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
#include "llvm/Transforms/Utils/ScalarEvolutionExpander.h"
2222

2323
namespace llvm {
24-
class BPFTTIImpl : public BasicTTIImplBase<BPFTTIImpl> {
24+
class BPFTTIImpl final : public BasicTTIImplBase<BPFTTIImpl> {
2525
typedef BasicTTIImplBase<BPFTTIImpl> BaseT;
2626
typedef TargetTransformInfo TTI;
2727
friend BaseT;

llvm/lib/Target/DirectX/DirectXTargetTransformInfo.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
#include "llvm/IR/Function.h"
1818

1919
namespace llvm {
20-
class DirectXTTIImpl : public BasicTTIImplBase<DirectXTTIImpl> {
20+
class DirectXTTIImpl final : public BasicTTIImplBase<DirectXTTIImpl> {
2121
using BaseT = BasicTTIImplBase<DirectXTTIImpl>;
2222
using TTI = TargetTransformInfo;
2323

llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ class ScalarEvolution;
3030
class User;
3131
class Value;
3232

33-
class HexagonTTIImpl : public BasicTTIImplBase<HexagonTTIImpl> {
33+
class HexagonTTIImpl final : public BasicTTIImplBase<HexagonTTIImpl> {
3434
using BaseT = BasicTTIImplBase<HexagonTTIImpl>;
3535
using TTI = TargetTransformInfo;
3636

llvm/lib/Target/Lanai/LanaiTargetTransformInfo.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
#include "llvm/Support/MathExtras.h"
2626

2727
namespace llvm {
28-
class LanaiTTIImpl : public BasicTTIImplBase<LanaiTTIImpl> {
28+
class LanaiTTIImpl final : public BasicTTIImplBase<LanaiTTIImpl> {
2929
typedef BasicTTIImplBase<LanaiTTIImpl> BaseT;
3030
typedef TargetTransformInfo TTI;
3131
friend BaseT;

llvm/lib/Target/Mips/MipsTargetTransformInfo.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515

1616
namespace llvm {
1717

18-
class MipsTTIImpl : public BasicTTIImplBase<MipsTTIImpl> {
18+
class MipsTTIImpl final : public BasicTTIImplBase<MipsTTIImpl> {
1919
using BaseT = BasicTTIImplBase<MipsTTIImpl>;
2020
using TTI = TargetTransformInfo;
2121

llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626

2727
namespace llvm {
2828

29-
class NVPTXTTIImpl : public BasicTTIImplBase<NVPTXTTIImpl> {
29+
class NVPTXTTIImpl final : public BasicTTIImplBase<NVPTXTTIImpl> {
3030
typedef BasicTTIImplBase<NVPTXTTIImpl> BaseT;
3131
typedef TargetTransformInfo TTI;
3232
friend BaseT;

llvm/lib/Target/PowerPC/PPCTargetTransformInfo.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424

2525
namespace llvm {
2626

27-
class PPCTTIImpl : public BasicTTIImplBase<PPCTTIImpl> {
27+
class PPCTTIImpl final : public BasicTTIImplBase<PPCTTIImpl> {
2828
typedef BasicTTIImplBase<PPCTTIImpl> BaseT;
2929
typedef TargetTransformInfo TTI;
3030
friend BaseT;

llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525

2626
namespace llvm {
2727

28-
class RISCVTTIImpl : public BasicTTIImplBase<RISCVTTIImpl> {
28+
class RISCVTTIImpl final : public BasicTTIImplBase<RISCVTTIImpl> {
2929
using BaseT = BasicTTIImplBase<RISCVTTIImpl>;
3030
using TTI = TargetTransformInfo;
3131

llvm/lib/Target/SPIRV/SPIRVTargetTransformInfo.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
#include "llvm/CodeGen/BasicTTIImpl.h"
2323

2424
namespace llvm {
25-
class SPIRVTTIImpl : public BasicTTIImplBase<SPIRVTTIImpl> {
25+
class SPIRVTTIImpl final : public BasicTTIImplBase<SPIRVTTIImpl> {
2626
using BaseT = BasicTTIImplBase<SPIRVTTIImpl>;
2727
using TTI = TargetTransformInfo;
2828

llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515

1616
namespace llvm {
1717

18-
class SystemZTTIImpl : public BasicTTIImplBase<SystemZTTIImpl> {
18+
class SystemZTTIImpl final : public BasicTTIImplBase<SystemZTTIImpl> {
1919
typedef BasicTTIImplBase<SystemZTTIImpl> BaseT;
2020
typedef TargetTransformInfo TTI;
2121
friend BaseT;

llvm/lib/Target/VE/VETargetTransformInfo.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ static bool isVectorLaneType(llvm::Type &ElemTy) {
4949

5050
namespace llvm {
5151

52-
class VETTIImpl : public BasicTTIImplBase<VETTIImpl> {
52+
class VETTIImpl final : public BasicTTIImplBase<VETTIImpl> {
5353
using BaseT = BasicTTIImplBase<VETTIImpl>;
5454
friend BaseT;
5555

llvm/lib/Target/X86/X86TargetTransformInfo.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ namespace llvm {
2525

2626
class InstCombiner;
2727

28-
class X86TTIImpl : public BasicTTIImplBase<X86TTIImpl> {
28+
class X86TTIImpl final : public BasicTTIImplBase<X86TTIImpl> {
2929
typedef BasicTTIImplBase<X86TTIImpl> BaseT;
3030
typedef TargetTransformInfo TTI;
3131
friend BaseT;

llvm/lib/Target/XCore/XCoreTargetTransformInfo.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424

2525
namespace llvm {
2626

27-
class XCoreTTIImpl : public BasicTTIImplBase<XCoreTTIImpl> {
27+
class XCoreTTIImpl final : public BasicTTIImplBase<XCoreTTIImpl> {
2828
typedef BasicTTIImplBase<XCoreTTIImpl> BaseT;
2929
typedef TargetTransformInfo TTI;
3030
friend BaseT;

0 commit comments

Comments
 (0)