diff options
Diffstat (limited to 'llvm/lib')
| -rw-r--r-- | llvm/lib/CodeGen/LexicalScopes.cpp | 19 | ||||
| -rw-r--r-- | llvm/lib/CodeGen/LiveIntervalUnion.cpp | 14 | ||||
| -rw-r--r-- | llvm/lib/CodeGen/LiveRegMatrix.cpp | 14 | ||||
| -rw-r--r-- | llvm/lib/CodeGen/LiveRegUnits.cpp | 7 | ||||
| -rw-r--r-- | llvm/lib/CodeGen/LowLevelType.cpp | 8 | ||||
| -rw-r--r-- | llvm/lib/CodeGen/MachineRegisterInfo.cpp | 27 | 
6 files changed, 63 insertions, 26 deletions
diff --git a/llvm/lib/CodeGen/LexicalScopes.cpp b/llvm/lib/CodeGen/LexicalScopes.cpp index 205902b2e94..275d84e2c18 100644 --- a/llvm/lib/CodeGen/LexicalScopes.cpp +++ b/llvm/lib/CodeGen/LexicalScopes.cpp @@ -14,14 +14,23 @@  //  //===----------------------------------------------------------------------===// +#include "llvm/ADT/DenseMap.h" +#include "llvm/ADT/SmallVector.h"  #include "llvm/CodeGen/LexicalScopes.h" +#include "llvm/CodeGen/MachineBasicBlock.h"  #include "llvm/CodeGen/MachineFunction.h"  #include "llvm/CodeGen/MachineInstr.h" -#include "llvm/IR/DebugInfo.h" -#include "llvm/IR/Function.h" +#include "llvm/IR/DebugInfoMetadata.h" +#include "llvm/IR/Metadata.h" +#include "llvm/Support/Casting.h" +#include "llvm/Support/Compiler.h"  #include "llvm/Support/Debug.h" -#include "llvm/Support/ErrorHandling.h" -#include "llvm/Support/FormattedStream.h" +#include "llvm/Support/raw_ostream.h" +#include <cassert> +#include <string> +#include <tuple> +#include <utility> +  using namespace llvm;  #define DEBUG_TYPE "lexicalscopes" @@ -58,7 +67,6 @@ void LexicalScopes::initialize(const MachineFunction &Fn) {  void LexicalScopes::extractLexicalScopes(      SmallVectorImpl<InsnRange> &MIRanges,      DenseMap<const MachineInstr *, LexicalScope *> &MI2ScopeMap) { -    // Scan each instruction and create scopes. First build working set of scopes.    for (const auto &MBB : *MF) {      const MachineInstr *RangeBeginMI = nullptr; @@ -248,7 +256,6 @@ void LexicalScopes::constructScopeNest(LexicalScope *Scope) {  void LexicalScopes::assignInstructionRanges(      SmallVectorImpl<InsnRange> &MIRanges,      DenseMap<const MachineInstr *, LexicalScope *> &MI2ScopeMap) { -    LexicalScope *PrevLexicalScope = nullptr;    for (const auto &R : MIRanges) {      LexicalScope *S = MI2ScopeMap.lookup(R.first); diff --git a/llvm/lib/CodeGen/LiveIntervalUnion.cpp b/llvm/lib/CodeGen/LiveIntervalUnion.cpp index fc2f233f6d6..cae899342e3 100644 --- a/llvm/lib/CodeGen/LiveIntervalUnion.cpp +++ b/llvm/lib/CodeGen/LiveIntervalUnion.cpp @@ -1,4 +1,4 @@ -//===-- LiveIntervalUnion.cpp - Live interval union data structure --------===// +//===- LiveIntervalUnion.cpp - Live interval union data structure ---------===//  //  //                     The LLVM Compiler Infrastructure  // @@ -13,19 +13,19 @@  //  //===----------------------------------------------------------------------===// -#include "llvm/CodeGen/LiveIntervalUnion.h" -#include "llvm/ADT/STLExtras.h"  #include "llvm/ADT/SparseBitVector.h" -#include "llvm/Support/Debug.h" +#include "llvm/ADT/STLExtras.h" +#include "llvm/CodeGen/LiveInterval.h" +#include "llvm/CodeGen/LiveIntervalUnion.h"  #include "llvm/Support/raw_ostream.h"  #include "llvm/Target/TargetRegisterInfo.h" -#include <algorithm> +#include <cassert> +#include <cstdlib>  using namespace llvm;  #define DEBUG_TYPE "regalloc" -  // Merge a LiveInterval's segments. Guarantee no overlaps.  void LiveIntervalUnion::unify(LiveInterval &VirtReg, const LiveRange &Range) {    if (Range.empty()) @@ -64,7 +64,7 @@ void LiveIntervalUnion::extract(LiveInterval &VirtReg, const LiveRange &Range) {    LiveRange::const_iterator RegEnd = Range.end();    SegmentIter SegPos = Segments.find(RegPos->start); -  for (;;) { +  while (true) {      assert(SegPos.value() == &VirtReg && "Inconsistent LiveInterval");      SegPos.erase();      if (!SegPos.valid()) diff --git a/llvm/lib/CodeGen/LiveRegMatrix.cpp b/llvm/lib/CodeGen/LiveRegMatrix.cpp index 7a51386aa9c..e5ae855a9f6 100644 --- a/llvm/lib/CodeGen/LiveRegMatrix.cpp +++ b/llvm/lib/CodeGen/LiveRegMatrix.cpp @@ -1,4 +1,4 @@ -//===-- LiveRegMatrix.cpp - Track register interference -------------------===// +//===- LiveRegMatrix.cpp - Track register interference --------------------===//  //  //                     The LLVM Compiler Infrastructure  // @@ -11,15 +11,22 @@  //  //===----------------------------------------------------------------------===// -#include "llvm/CodeGen/LiveRegMatrix.h"  #include "RegisterCoalescer.h"  #include "llvm/ADT/Statistic.h" +#include "llvm/CodeGen/LiveInterval.h"  #include "llvm/CodeGen/LiveIntervalAnalysis.h" +#include "llvm/CodeGen/LiveRegMatrix.h"  #include "llvm/CodeGen/VirtRegMap.h" +#include "llvm/CodeGen/LiveIntervalUnion.h" +#include "llvm/CodeGen/MachineFunction.h" +#include "llvm/Pass.h" +#include "llvm/MC/LaneBitmask.h" +#include "llvm/MC/MCRegisterInfo.h"  #include "llvm/Support/Debug.h"  #include "llvm/Support/raw_ostream.h"  #include "llvm/Target/TargetRegisterInfo.h"  #include "llvm/Target/TargetSubtargetInfo.h" +#include <cassert>  using namespace llvm; @@ -36,8 +43,7 @@ INITIALIZE_PASS_DEPENDENCY(VirtRegMap)  INITIALIZE_PASS_END(LiveRegMatrix, "liveregmatrix",                      "Live Register Matrix", false, false) -LiveRegMatrix::LiveRegMatrix() : MachineFunctionPass(ID), -  UserTag(0), RegMaskTag(0), RegMaskVirtReg(0) {} +LiveRegMatrix::LiveRegMatrix() : MachineFunctionPass(ID) {}  void LiveRegMatrix::getAnalysisUsage(AnalysisUsage &AU) const {    AU.setPreservesAll(); diff --git a/llvm/lib/CodeGen/LiveRegUnits.cpp b/llvm/lib/CodeGen/LiveRegUnits.cpp index 0a10b4e6265..dff555f4956 100644 --- a/llvm/lib/CodeGen/LiveRegUnits.cpp +++ b/llvm/lib/CodeGen/LiveRegUnits.cpp @@ -1,4 +1,4 @@ -//===--- LiveRegUnits.cpp - Register Unit Set -----------------------------===// +//===- LiveRegUnits.cpp - Register Unit Set -------------------------------===//  //  //                     The LLVM Compiler Infrastructure  // @@ -12,9 +12,14 @@  //===----------------------------------------------------------------------===//  #include "llvm/CodeGen/LiveRegUnits.h" +#include "llvm/CodeGen/MachineBasicBlock.h"  #include "llvm/CodeGen/MachineFrameInfo.h"  #include "llvm/CodeGen/MachineFunction.h"  #include "llvm/CodeGen/MachineInstrBundle.h" +#include "llvm/CodeGen/MachineOperand.h" +#include "llvm/MC/MCRegisterInfo.h" +#include "llvm/Target/TargetRegisterInfo.h" +  using namespace llvm;  void LiveRegUnits::removeRegsNotPreserved(const uint32_t *RegMask) { diff --git a/llvm/lib/CodeGen/LowLevelType.cpp b/llvm/lib/CodeGen/LowLevelType.cpp index d74b7306e0f..cc1ce79a7ea 100644 --- a/llvm/lib/CodeGen/LowLevelType.cpp +++ b/llvm/lib/CodeGen/LowLevelType.cpp @@ -1,4 +1,4 @@ -//===-- llvm/CodeGen/GlobalISel/LowLevelType.cpp --------------------------===// +//===- llvm/CodeGen/GlobalISel/LowLevelType.cpp ---------------------------===//  //  //                     The LLVM Compiler Infrastructure  // @@ -13,9 +13,15 @@  //===----------------------------------------------------------------------===//  #include "llvm/CodeGen/LowLevelType.h" +#include "llvm/CodeGen/MachineValueType.h"  #include "llvm/IR/DataLayout.h"  #include "llvm/IR/DerivedTypes.h" +#include "llvm/IR/Type.h" +#include "llvm/Support/Casting.h" +#include "llvm/Support/ErrorHandling.h"  #include "llvm/Support/raw_ostream.h" +#include <cassert> +  using namespace llvm;  LLT::LLT(Type &Ty, const DataLayout &DL) { diff --git a/llvm/lib/CodeGen/MachineRegisterInfo.cpp b/llvm/lib/CodeGen/MachineRegisterInfo.cpp index be4f3cc9dc5..2bb5b054066 100644 --- a/llvm/lib/CodeGen/MachineRegisterInfo.cpp +++ b/llvm/lib/CodeGen/MachineRegisterInfo.cpp @@ -1,4 +1,4 @@ -//===-- lib/Codegen/MachineRegisterInfo.cpp -------------------------------===// +//===- lib/Codegen/MachineRegisterInfo.cpp --------------------------------===//  //  //                     The LLVM Compiler Infrastructure  // @@ -11,13 +11,27 @@  //  //===----------------------------------------------------------------------===// -#include "llvm/CodeGen/MachineRegisterInfo.h" +#include "llvm/ADT/iterator_range.h" +#include "llvm/CodeGen/LowLevelType.h" +#include "llvm/CodeGen/MachineBasicBlock.h" +#include "llvm/CodeGen/MachineFunction.h" +#include "llvm/CodeGen/MachineInstr.h"  #include "llvm/CodeGen/MachineInstrBuilder.h" +#include "llvm/CodeGen/MachineOperand.h" +#include "llvm/CodeGen/MachineRegisterInfo.h" +#include "llvm/IR/Attributes.h" +#include "llvm/IR/DebugLoc.h"  #include "llvm/IR/Function.h" -#include "llvm/Support/raw_os_ostream.h" +#include "llvm/MC/MCRegisterInfo.h" +#include "llvm/Support/Casting.h" +#include "llvm/Support/CommandLine.h" +#include "llvm/Support/Compiler.h" +#include "llvm/Support/ErrorHandling.h" +#include "llvm/Support/raw_ostream.h"  #include "llvm/Target/TargetInstrInfo.h" -#include "llvm/Target/TargetMachine.h" +#include "llvm/Target/TargetRegisterInfo.h"  #include "llvm/Target/TargetSubtargetInfo.h" +#include <cassert>  using namespace llvm; @@ -28,9 +42,8 @@ static cl::opt<bool> EnableSubRegLiveness("enable-subreg-liveness", cl::Hidden,  void MachineRegisterInfo::Delegate::anchor() {}  MachineRegisterInfo::MachineRegisterInfo(MachineFunction *MF) -    : MF(MF), TheDelegate(nullptr), -      TracksSubRegLiveness(MF->getSubtarget().enableSubRegLiveness() && -                           EnableSubRegLiveness) { +    : MF(MF), TracksSubRegLiveness(MF->getSubtarget().enableSubRegLiveness() && +                                   EnableSubRegLiveness) {    unsigned NumRegs = getTargetRegisterInfo()->getNumRegs();    VRegInfo.reserve(256);    RegAllocHints.reserve(256);  | 

