diff options
author | Adrian Bunk <bunk@kernel.org> | 2008-08-05 22:06:51 +0300 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2008-08-07 09:49:43 -0400 |
commit | b08cbcd4546445740c2a04291204b56f8baf7be2 (patch) | |
tree | 9da2fe906ded659dc8e78c768807facbbd498b74 | |
parent | f078f209704849c86bd43c0beccfc1f410ed1c66 (diff) | |
download | kernel_samsung_espresso10-b08cbcd4546445740c2a04291204b56f8baf7be2.zip kernel_samsung_espresso10-b08cbcd4546445740c2a04291204b56f8baf7be2.tar.gz kernel_samsung_espresso10-b08cbcd4546445740c2a04291204b56f8baf7be2.tar.bz2 |
ath9k: work around gcc ICEs
This patch works around an internal compiler error (gcc bug #37014) in
all gcc 4.2 compilers and the gcc 4.3 series up to at least 4.3.1
on at least powerpc and mips.
Many thanks to Andrew Pinski for analyzing the gcc bug.
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r-- | drivers/net/wireless/ath9k/hw.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/net/wireless/ath9k/hw.c b/drivers/net/wireless/ath9k/hw.c index 1f6f393..63d0ead 100644 --- a/drivers/net/wireless/ath9k/hw.c +++ b/drivers/net/wireless/ath9k/hw.c @@ -4801,7 +4801,11 @@ static void ath9k_hw_9280_spur_mitigate(struct ath_hal *ah, for (i = 0; i < 123; i++) { if ((cur_vit_mask > lower) && (cur_vit_mask < upper)) { - if ((abs(cur_vit_mask - bin)) < 75) + + /* workaround for gcc bug #37014 */ + volatile int tmp = abs(cur_vit_mask - bin); + + if (tmp < 75) mask_amt = 1; else mask_amt = 0; |