diff options
| author | Augie Fackler <augie@google.com> | 2022-02-14 14:01:19 -0500 |
|---|---|---|
| committer | Augie Fackler <augie@google.com> | 2022-02-14 16:09:53 -0500 |
| commit | 0958c8f4cad247204ed7d9f9723f273ef81074f1 (patch) | |
| tree | dee36b326af39468769a97bcbe1f4de2cd4de51d /compiler/rustc_codegen_llvm/src/llvm/ffi.rs | |
| parent | 52dd59ed2154f4158ae37e6994b678a6249a7bb0 (diff) | |
| download | rust-0958c8f4cad247204ed7d9f9723f273ef81074f1.tar.gz rust-0958c8f4cad247204ed7d9f9723f273ef81074f1.zip | |
llvm: migrate to new parameter-bearing uwtable attr
In https://reviews.llvm.org/D114543 the uwtable attribute gained a flag so that we can ask for sync uwtables instead of async, as the former are much cheaper. The default is async, so that's what I've done here, but I left a TODO that we might be able to do better. While in here I went ahead and dropped support for removing uwtable attributes in rustc: we never did it, so I didn't write the extra C++ bridge code to make it work. Maybe I should have done the same thing with the `sync|async` parameter but we'll see.
Diffstat (limited to 'compiler/rustc_codegen_llvm/src/llvm/ffi.rs')
| -rw-r--r-- | compiler/rustc_codegen_llvm/src/llvm/ffi.rs | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/compiler/rustc_codegen_llvm/src/llvm/ffi.rs b/compiler/rustc_codegen_llvm/src/llvm/ffi.rs index 4f62c685568..90d4367a280 100644 --- a/compiler/rustc_codegen_llvm/src/llvm/ffi.rs +++ b/compiler/rustc_codegen_llvm/src/llvm/ffi.rs @@ -1182,6 +1182,7 @@ extern "C" { pub fn LLVMRustAddByValAttr(Fn: &Value, index: c_uint, ty: &Type); pub fn LLVMRustAddStructRetAttr(Fn: &Value, index: c_uint, ty: &Type); pub fn LLVMRustAddFunctionAttribute(Fn: &Value, index: c_uint, attr: Attribute); + pub fn LLVMRustEmitUWTableAttr(Fn: &Value, async_: bool); pub fn LLVMRustAddFunctionAttrStringValue( Fn: &Value, index: c_uint, |
