diff options
author | Russell King <rmk@dyn-67.arm.linux.org.uk> | 2006-03-13 01:36:06 +0300 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2006-03-13 01:36:06 +0300 |
commit | cdaabbd74b15296acf09215355a7f3b07b92b83e (patch) | |
tree | da2e2ce07a31eb10cb3649005479a9588ba22809 /include | |
parent | 04916c0ef482335cb0ae575dbc5a1d97619840cd (diff) | |
download | linux-cdaabbd74b15296acf09215355a7f3b07b92b83e.tar.xz |
[ARM] iwmmxt thread state alignment
This patch removes the reliance of iwmmxt on hand coded alignments.
Since thread_info is always 8K aligned, specifying that fpstate is
8-byte aligned achieves the same effect without needing to resort
to hand coded alignments.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'include')
-rw-r--r-- | include/asm-arm/fpstate.h | 4 | ||||
-rw-r--r-- | include/asm-arm/thread_info.h | 2 |
2 files changed, 4 insertions, 2 deletions
diff --git a/include/asm-arm/fpstate.h b/include/asm-arm/fpstate.h index f7430e3aa55d..6246bf83627d 100644 --- a/include/asm-arm/fpstate.h +++ b/include/asm-arm/fpstate.h @@ -55,8 +55,10 @@ struct fp_soft_struct { unsigned int save[FP_SOFT_SIZE]; /* undefined information */ }; +#define IWMMXT_SIZE 0x98 + struct iwmmxt_struct { - unsigned int save[0x98/sizeof(int) + 1]; + unsigned int save[IWMMXT_SIZE / sizeof(unsigned int)]; }; union fp_state { diff --git a/include/asm-arm/thread_info.h b/include/asm-arm/thread_info.h index 33a33cbb6329..cfbccb63c67b 100644 --- a/include/asm-arm/thread_info.h +++ b/include/asm-arm/thread_info.h @@ -59,7 +59,7 @@ struct thread_info { struct cpu_context_save cpu_context; /* cpu context */ __u8 used_cp[16]; /* thread used copro */ unsigned long tp_value; - union fp_state fpstate; + union fp_state fpstate __attribute__((aligned(8))); union vfp_state vfpstate; struct restart_block restart_block; }; |