about summary refs log tree commit diff
path: root/compiler/rustc_codegen_llvm/src
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/rustc_codegen_llvm/src')
-rw-r--r--compiler/rustc_codegen_llvm/src/abi.rs20
1 files changed, 10 insertions, 10 deletions
diff --git a/compiler/rustc_codegen_llvm/src/abi.rs b/compiler/rustc_codegen_llvm/src/abi.rs
index a20801914ad..5b8cc238480 100644
--- a/compiler/rustc_codegen_llvm/src/abi.rs
+++ b/compiler/rustc_codegen_llvm/src/abi.rs
@@ -59,6 +59,9 @@ impl ArgAttributesExt for ArgAttributes {
                     llattr.apply_llfn(idx, llfn);
                 }
             }
+            if let Some(align) = self.pointee_align {
+                llvm::LLVMRustAddAlignmentAttr(llfn, idx.as_uint(), align.bytes() as u32);
+            }
             match self.arg_ext {
                 ArgExtension::None => {}
                 ArgExtension::Zext => llvm::Attribute::ZExt.apply_llfn(idx, llfn),
@@ -77,9 +80,6 @@ impl ArgAttributesExt for ArgAttributes {
                 }
                 regular -= ArgAttribute::NonNull;
             }
-            if let Some(align) = self.pointee_align {
-                llvm::LLVMRustAddAlignmentAttr(llfn, idx.as_uint(), align.bytes() as u32);
-            }
             for (attr, llattr) in OPTIMIZATION_ATTRIBUTES {
                 if regular.contains(attr) {
                     llattr.apply_llfn(idx, llfn);
@@ -105,6 +105,13 @@ impl ArgAttributesExt for ArgAttributes {
                     llattr.apply_callsite(idx, callsite);
                 }
             }
+            if let Some(align) = self.pointee_align {
+                llvm::LLVMRustAddAlignmentCallSiteAttr(
+                    callsite,
+                    idx.as_uint(),
+                    align.bytes() as u32,
+                );
+            }
             match self.arg_ext {
                 ArgExtension::None => {}
                 ArgExtension::Zext => llvm::Attribute::ZExt.apply_callsite(idx, callsite),
@@ -127,13 +134,6 @@ impl ArgAttributesExt for ArgAttributes {
                 }
                 regular -= ArgAttribute::NonNull;
             }
-            if let Some(align) = self.pointee_align {
-                llvm::LLVMRustAddAlignmentCallSiteAttr(
-                    callsite,
-                    idx.as_uint(),
-                    align.bytes() as u32,
-                );
-            }
             for (attr, llattr) in OPTIMIZATION_ATTRIBUTES {
                 if regular.contains(attr) {
                     llattr.apply_callsite(idx, callsite);