about summary refs log tree commit diff
path: root/compiler/rustc_codegen_llvm/src/llvm
diff options
context:
space:
mode:
authorJosh Stone <jistone@redhat.com>2021-08-03 15:09:57 -0700
committerJosh Stone <jistone@redhat.com>2021-08-05 10:58:55 -0700
commit183d79cc09ad81bc2dc7b47cb8880046201e52a2 (patch)
tree589011598c1d626b6d6f59b9cb32580cfbfd7a1b /compiler/rustc_codegen_llvm/src/llvm
parent61a941b8badbce727085c505068d72fa3e737f5b (diff)
downloadrust-183d79cc09ad81bc2dc7b47cb8880046201e52a2.tar.gz
rust-183d79cc09ad81bc2dc7b47cb8880046201e52a2.zip
Prepare call/invoke for opaque pointers
Rather than relying on `getPointerElementType()` from LLVM function
pointers, we now pass the function type explicitly when building `call`
or `invoke` instructions.
Diffstat (limited to 'compiler/rustc_codegen_llvm/src/llvm')
-rw-r--r--compiler/rustc_codegen_llvm/src/llvm/ffi.rs2
1 files changed, 2 insertions, 0 deletions
diff --git a/compiler/rustc_codegen_llvm/src/llvm/ffi.rs b/compiler/rustc_codegen_llvm/src/llvm/ffi.rs
index e803ad6d88e..57173a49107 100644
--- a/compiler/rustc_codegen_llvm/src/llvm/ffi.rs
+++ b/compiler/rustc_codegen_llvm/src/llvm/ffi.rs
@@ -1155,6 +1155,7 @@ extern "C" {
     ) -> &'a Value;
     pub fn LLVMRustBuildInvoke(
         B: &Builder<'a>,
+        Ty: &'a Type,
         Fn: &'a Value,
         Args: *const &'a Value,
         NumArgs: c_uint,
@@ -1526,6 +1527,7 @@ extern "C" {
     pub fn LLVMRustGetInstrProfIncrementIntrinsic(M: &Module) -> &'a Value;
     pub fn LLVMRustBuildCall(
         B: &Builder<'a>,
+        Ty: &'a Type,
         Fn: &'a Value,
         Args: *const &'a Value,
         NumArgs: c_uint,