Add an "alignment" field to the MachineFunction object. It makes more sense to

have the alignment be calculated up front, and have the back-ends obey whatever
alignment is decided upon.

This allows for future work that would allow for precise no-op placement and the
like.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74564 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Bill Wendling
2009-06-30 22:38:32 +00:00
parent 73b8f16b36
commit 20c568f366
35 changed files with 122 additions and 36 deletions

View File

@@ -111,6 +111,9 @@ class MachineFunction : private Annotation {
// Tracks debug locations.
DebugLocTracker DebugLocInfo;
// The alignment of the function.
unsigned Alignment;
public:
MachineFunction(const Function *Fn, const TargetMachine &TM);
~MachineFunction();
@@ -148,6 +151,14 @@ public:
MachineConstantPool *getConstantPool() { return ConstantPool; }
const MachineConstantPool *getConstantPool() const { return ConstantPool; }
/// getAlignment - Return the alignment of the function.
///
unsigned getAlignment() const { return Alignment; }
/// setAlignment - Set the alignment of the function.
///
void setAlignment(unsigned A) { Alignment = A; }
/// MachineFunctionInfo - Keep track of various per-function pieces of
/// information for backends that would like to do so.
///