From: Luqman Aden Date: Wed, 13 Feb 2013 20:41:04 +0000 (-0500) Subject: rt: Fix alignment in debug_opaque X-Git-Url: https://git.lizzy.rs/?a=commitdiff_plain;h=2c198561dd878dcfa4fca3b7785215fd3490ca84;p=rust.git rt: Fix alignment in debug_opaque --- diff --git a/src/rt/rust_builtin.cpp b/src/rt/rust_builtin.cpp index a8e1e7a0be4..3f6545caaa8 100644 --- a/src/rt/rust_builtin.cpp +++ b/src/rt/rust_builtin.cpp @@ -241,13 +241,12 @@ debug_opaque(type_desc *t, uint8_t *front) { rust_task *task = rust_get_current_task(); LOG(task, stdlib, "debug_opaque"); debug_tydesc_helper(t); + // Account for alignment. `front` may not indeed be the + // front byte of the passed-in argument + if (((uintptr_t)front % t->align) != 0) { + front = (uint8_t *)align_to((uintptr_t)front, (size_t)t->align); + } for (uintptr_t i = 0; i < t->size; ++front, ++i) { - - // Account for alignment. `front` may not indeed be the - // front byte of the passed-in argument - if (((uintptr_t)front % t->align) != 0) - front = (uint8_t *)align_to((uintptr_t)front, (size_t)t->align); - LOG(task, stdlib, " byte %" PRIdPTR ": 0x%" PRIx8, i, *front); } }