On Tue, Feb 06, 2007 at 08:00:29PM +0000, Ralf Baechle wrote: > On Tue, Feb 06, 2007 at 04:44:50PM -0200, Alexandre Oliva wrote: > > Meanwhile, there's __builtin_trap() already, and Ralf might use that > > even to remove the asm volatile, and Paweł could use it in a default: > > label. It's still worse than a __builtin_assume(e == X || e == Y), > > but it's probably much simpler to implement. But then, > > __builtin_unreachable() might very well be implemented as > > __builtin_assume(0). > > The Linux/MIPS BUG() macro uses a break 512 instruction while > __builtin_trap() generates a plain break that is break 0 instruction. > Aside of that __builtin_trap() would be fine ...
__builtin_break_512() ?