1 // Copyright 2018 The Fuchsia Authors
2 //
3 // Use of this source code is governed by a MIT-style
4 // license that can be found in the LICENSE file or at
5 // https://opensource.org/licenses/MIT
6 
7 #pragma once
8 
9 #include <arch/defines.h>
10 #include <zircon/compiler.h>
11 
12 // Use to align structures on cache lines to avoid cpu aliasing.
13 #define __CPU_ALIGN __ALIGNED(MAX_CACHE_LINE)
14 
15 // Similar to above, but put in a special section to make sure no other
16 // variable shares the same cache line.
17 #define __CPU_ALIGN_EXCLUSIVE __CPU_ALIGN __SECTION(".data.cpu_align_exclusive")
18