~ubuntu-branches/ubuntu/trusty/llvm-toolchain-snapshot/trusty-201310232150

« back to all changes in this revision

Viewing changes to include/llvm/Support/CodeGen.h

  • Committer: Package Import Robot
  • Author(s): Sylvestre Ledru
  • Date: 2013-05-27 15:01:57 UTC
  • mfrom: (0.10.1) (0.9.1) (0.8.1) (0.7.1) (0.6.1) (0.5.2)
  • Revision ID: package-import@ubuntu.com-20130527150157-tdkrsjpuvht7v0qx
Tags: 1:3.4~svn182733-1~exp1
* New snapshot release (3.4 release)
* Add a symlink of libLLVM-3.4.so.1 to usr/lib/llvm-3.4/lib/libLLVM-3.4.so
    to fix make the llvm-config-3.4 --libdir work (Closes: #708677)
  * Various packages rename to allow co installations:
    * libclang1 => libclang1-3.4
    * libclang1-dbg => libclang1-3.4-dbg
    * libclang-dev => libclang-3.4-dev
    * libclang-common-dev => libclang-common-3.4-dev

Show diffs side-by-side

added added

removed removed

Lines of Context:
15
15
#ifndef LLVM_SUPPORT_CODEGEN_H
16
16
#define LLVM_SUPPORT_CODEGEN_H
17
17
 
 
18
#include "llvm-c/TargetMachine.h"
 
19
#include "llvm/Support/ErrorHandling.h"
 
20
 
18
21
namespace llvm {
19
22
 
20
23
  // Relocation model types.
47
50
    };
48
51
  }
49
52
 
 
53
  // Create wrappers for C Binding types (see CBindingWrapping.h).
 
54
  inline CodeModel::Model unwrap(LLVMCodeModel Model) {
 
55
    switch (Model) {
 
56
      case LLVMCodeModelDefault:
 
57
        return CodeModel::Default;
 
58
      case LLVMCodeModelJITDefault:
 
59
        return CodeModel::JITDefault;
 
60
      case LLVMCodeModelSmall:
 
61
        return CodeModel::Small;
 
62
      case LLVMCodeModelKernel:
 
63
        return CodeModel::Kernel;
 
64
      case LLVMCodeModelMedium:
 
65
        return CodeModel::Medium;
 
66
      case LLVMCodeModelLarge:
 
67
        return CodeModel::Large;
 
68
    }
 
69
    return CodeModel::Default;
 
70
  }
 
71
 
 
72
  inline LLVMCodeModel wrap(CodeModel::Model Model) {
 
73
    switch (Model) {
 
74
      case CodeModel::Default:
 
75
        return LLVMCodeModelDefault;
 
76
      case CodeModel::JITDefault:
 
77
        return LLVMCodeModelJITDefault;
 
78
      case CodeModel::Small:
 
79
        return LLVMCodeModelSmall;
 
80
      case CodeModel::Kernel:
 
81
        return LLVMCodeModelKernel;
 
82
      case CodeModel::Medium:
 
83
        return LLVMCodeModelMedium;
 
84
      case CodeModel::Large:
 
85
        return LLVMCodeModelLarge;
 
86
    }
 
87
    llvm_unreachable("Bad CodeModel!");
 
88
  }
50
89
}  // end llvm namespace
51
90
 
52
91
#endif