introduce a new RoundUpAlignment helper function, use it to
[oota-llvm.git] / include / llvm / Target / TargetELFWriterInfo.h
1 //===-- llvm/Target/TargetELFWriterInfo.h - ELF Writer Info -----*- C++ -*-===//
2 //
3 //                     The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 //
10 // This file defines the TargetELFWriterInfo class.
11 //
12 //===----------------------------------------------------------------------===//
13
14 #ifndef LLVM_TARGET_TARGETELFWRITERINFO_H
15 #define LLVM_TARGET_TARGETELFWRITERINFO_H
16
17 namespace llvm {
18
19   class MachineBasicBlock;
20
21   //===--------------------------------------------------------------------===//
22   //                          TargetELFWriterInfo
23   //===--------------------------------------------------------------------===//
24
25   class TargetELFWriterInfo {
26     // EMachine - This field is the target specific value to emit as the
27     // e_machine member of the ELF header.
28     unsigned short EMachine;
29   public:
30     enum MachineType {
31       NoMachine,
32       EM_386 = 3
33     };
34
35     explicit TargetELFWriterInfo(MachineType machine) : EMachine(machine) {}
36     virtual ~TargetELFWriterInfo() {}
37
38     unsigned short getEMachine() const { return EMachine; }
39   };
40
41 } // end llvm namespace
42
43 #endif // LLVM_TARGET_TARGETELFWRITERINFO_H