[CodeGen] Refactor MachineMemOperand's Flags enum.
Summary: - Give it a shorter name (because we're going to refer to it often from SelectionDAG and friends). - Split the flags and alignment into separate variables. - Specialize FlagsEnumTraits for it, so we can do bitwise ops on it without losing type information. - Make some enum values constants in MachineMemOperand instead. MOMaxBits should not be a valid Flag. - Simplify some of the bitwise ops for dealing with Flags. Reviewers: chandlerc Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D22281 llvm-svn: 275438
This commit is contained in:
@@ -299,8 +299,11 @@ MachineFunction::getMachineMemOperand(MachinePointerInfo PtrInfo, unsigned f,
|
||||
uint64_t s, unsigned base_alignment,
|
||||
const AAMDNodes &AAInfo,
|
||||
const MDNode *Ranges) {
|
||||
return new (Allocator) MachineMemOperand(PtrInfo, f, s, base_alignment,
|
||||
AAInfo, Ranges);
|
||||
// FIXME: Get rid of this static_cast and make getMachineOperand take a
|
||||
// MachineMemOperand::Flags param.
|
||||
return new (Allocator)
|
||||
MachineMemOperand(PtrInfo, static_cast<MachineMemOperand::Flags>(f), s,
|
||||
base_alignment, AAInfo, Ranges);
|
||||
}
|
||||
|
||||
MachineMemOperand *
|
||||
|
||||
Reference in New Issue
Block a user