diff options
author | David Daney <ddaney@caviumnetworks.com> | 2008-11-20 20:26:36 -0500 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2008-11-24 11:35:07 -0500 |
commit | 8ec2e24356e63dc298c6040557faf396410907ac (patch) | |
tree | 77615c090cec2a726a31618e66aaac7dd10a33b1 /arch/sparc64/mm/init.c | |
parent | ed313489badef16d700f5a3be50e8fd8f8294bc8 (diff) |
MIPS: Make BUG() __noreturn.
Often we do things like put BUG() in the default clause of a case
statement. Since it was not declared __noreturn, this could sometimes
lead to bogus compiler warnings that variables were used
uninitialized.
There is a small problem in that we have to put a magic while(1); loop to
fool GCC into really thinking it is noreturn. This makes the new
BUG() function 3 instructions long instead of just 1, but I think it
is worth it as it is now unnecessary to do extra work to silence the
'used uninitialized' warnings.
I also re-wrote BUG_ON so that if it is given a constant condition, it
just does BUG() instead of loading a constant value in to a register
and testing it.
Signed-off-by: David Daney <ddaney@caviumnetworks.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/sparc64/mm/init.c')
0 files changed, 0 insertions, 0 deletions