about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorbjorn3 <17426603+bjorn3@users.noreply.github.com>2025-02-13 14:23:18 +0000
committerbjorn3 <17426603+bjorn3@users.noreply.github.com>2025-02-13 14:23:18 +0000
commit27e8329b2071e3be980c149c23bc15093681065d (patch)
tree42b731c1702b9c9d840bf958dc614d984482231e /src
parentc27715bf66353eb77625eec2f9ebcf4bda68497d (diff)
Slightly optimize dynamic realignment in create_stack_slot
Diffstat (limited to 'src')
-rw-r--r--src/common.rs2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/common.rs b/src/common.rs
index 25941e07a19..766278d8718 100644
--- a/src/common.rs
+++ b/src/common.rs
@@ -408,7 +408,7 @@ impl<'tcx> FunctionCx<'_, '_, 'tcx> {
                 align_shift: 4,
             });
             let base_ptr = self.bcx.ins().stack_addr(self.pointer_type, stack_slot, 0);
-            let misalign_offset = self.bcx.ins().urem_imm(base_ptr, i64::from(align));
+            let misalign_offset = self.bcx.ins().band_imm(base_ptr, i64::from(align - 1));
             let realign_offset = self.bcx.ins().irsub_imm(misalign_offset, i64::from(align));
             Pointer::new(self.bcx.ins().iadd(base_ptr, realign_offset))
         }