diff --git a/src/arch/aarch64/start.rs b/src/arch/aarch64/start.rs
index ed94fcbb41459b959a59e33e0c143034d88c0b0a..71f65f8625410973463837a74256dda7552973b0 100644
--- a/src/arch/aarch64/start.rs
+++ b/src/arch/aarch64/start.rs
@@ -104,13 +104,13 @@ pub unsafe extern fn kstart(args_ptr: *const KernelArgs) -> ! {
         });
 
         info!("Redox OS starting...");
-        info!("Kernel: {:X}:{:X}", args.kernel_base, args.kernel_base + args.kernel_size);
-        info!("Stack: {:X}:{:X}", args.stack_base, args.stack_base + args.stack_size);
-        info!("Env: {:X}:{:X}", args.env_base, args.env_base + args.env_size);
-        info!("RSDPs: {:X}:{:X}", args.dtb_base, args.dtb_base + args.dtb_size);
-        info!("Areas: {:X}:{:X}", args.areas_base, args.areas_base + args.areas_size);
-        info!("Bootstrap: {:X}:{:X}", args.bootstrap_base, args.bootstrap_base + args.bootstrap_size);
-        info!("Bootstrap entry point: {:X}", args.bootstrap_entry);
+        info!("Kernel: {:X}:{:X}", {args.kernel_base}, args.kernel_base + args.kernel_size);
+        info!("Stack: {:X}:{:X}", {args.stack_base}, args.stack_base + args.stack_size);
+        info!("Env: {:X}:{:X}", {args.env_base}, args.env_base + args.env_size);
+        info!("RSDPs: {:X}:{:X}", {args.dtb_base}, args.dtb_base + args.dtb_size);
+        info!("Areas: {:X}:{:X}", {args.areas_base}, args.areas_base + args.areas_size);
+        info!("Bootstrap: {:X}:{:X}", {args.bootstrap_base}, args.bootstrap_base + args.bootstrap_size);
+        info!("Bootstrap entry point: {:X}", {args.bootstrap_entry});
 
         // Setup interrupt handlers
         extern "C" {
diff --git a/src/context/arch/aarch64.rs b/src/context/arch/aarch64.rs
index c1141d00de84bacabe05603489f0d44e5503f41e..beceba52a9324b865a973f81c276a15e9858313c 100644
--- a/src/context/arch/aarch64.rs
+++ b/src/context/arch/aarch64.rs
@@ -186,7 +186,7 @@ pub unsafe fn switch_to(prev: &mut super::Context, next: &mut super::Context) {
         "stp q30, q31, [{0}, #16 * 30]",
         "mrs {1}, fpcr",
         "mrs {2}, fpsr",
-        in(reg) &mut float_regs.fp_simd_regs,
+        in(reg) core::ptr::addr_of_mut!(float_regs.fp_simd_regs),
         out(reg) float_regs.fpcr,
         out(reg) float_regs.fpsr
     );
@@ -214,7 +214,7 @@ pub unsafe fn switch_to(prev: &mut super::Context, next: &mut super::Context) {
             "ldp q30, q31, [{0}, #16 * 30]",
             "msr fpcr, {1}",
             "msr fpsr, {2}",
-            in(reg) &mut float_regs.fp_simd_regs,
+            in(reg) core::ptr::addr_of_mut!(float_regs.fp_simd_regs),
             in(reg) float_regs.fpcr,
             in(reg) float_regs.fpsr
         );