]> granicus.if.org Git - llvm/commitdiff
[LLVM-C] Expand LLVMRelocMode
authorRobert Widmann <devteam.codafi@gmail.com>
Thu, 3 Jan 2019 00:33:44 +0000 (00:33 +0000)
committerRobert Widmann <devteam.codafi@gmail.com>
Thu, 3 Jan 2019 00:33:44 +0000 (00:33 +0000)
Summary: Add read[only|write] PIC relocation models to the C API and teach the TargetMachine API about it.

Reviewers: whitequark, deadalnix

Reviewed By: whitequark

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D56187

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@350279 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm-c/TargetMachine.h
lib/Target/TargetMachineC.cpp

index bcfa0012c3cf43b519630da76bd968fc57bc38a7..c06e9edc9aaf249966fb3dc04fcb90d09217f53a 100644 (file)
@@ -39,7 +39,10 @@ typedef enum {
     LLVMRelocDefault,
     LLVMRelocStatic,
     LLVMRelocPIC,
-    LLVMRelocDynamicNoPic
+    LLVMRelocDynamicNoPic,
+    LLVMRelocROPI,
+    LLVMRelocRWPI,
+    LLVMRelocROPI_RWPI
 } LLVMRelocMode;
 
 typedef enum {
index 37d398d580f8d5067380509eee9446585911fa9d..bae45ae28c45c6fc32b543e06b8b482487cc4d40 100644 (file)
@@ -115,6 +115,15 @@ LLVMTargetMachineRef LLVMCreateTargetMachine(LLVMTargetRef T,
     case LLVMRelocDynamicNoPic:
       RM = Reloc::DynamicNoPIC;
       break;
+    case LLVMRelocROPI:
+      RM = Reloc::ROPI;
+      break;
+    case LLVMRelocRWPI:
+      RM = Reloc::RWPI;
+      break;
+    case LLVMRelocROPI_RWPI:
+      RM = Reloc::ROPI_RWPI;
+      break;
     default:
       break;
   }