[Bug c/39252] Request new feature __builtin_not_reached();

2009-06-09 Thread daney at gcc dot gnu dot org
--- Comment #12 from daney at gcc dot gnu dot org 2009-06-09 20:16 --- (In reply to comment #6) > Wouldn't be a special "noreturn" clobber in inline asm better suited for this > then? > See: http://gcc.gnu.org/ml/gcc-patches/2000-01/msg00190.html for an opposing opinion. -- http:/

[Bug c/39252] Request new feature __builtin_not_reached();

2009-06-09 Thread daney at gcc dot gnu dot org
--- Comment #11 from daney at gcc dot gnu dot org 2009-06-09 20:12 --- This is essentially __builtin_unreachable() for which I am working on a patch. http://gcc.gnu.org/ml/gcc-patches/2009-06/msg00787.html -- daney at gcc dot gnu dot org changed: What|Removed

[Bug c/39252] Request new feature __builtin_not_reached();

2009-03-01 Thread rguenth at gcc dot gnu dot org
--- Comment #10 from rguenth at gcc dot gnu dot org 2009-03-01 22:41 --- Oh, patches welcome! -- rguenth at gcc dot gnu dot org changed: What|Removed |Added

[Bug c/39252] Request new feature __builtin_not_reached();

2009-03-01 Thread hpa at zytor dot com
--- Comment #9 from hpa at zytor dot com 2009-03-01 22:34 --- > Though __builtin_not_reached () can be used to implement __builtin_assume (), > so it may be more generally useful. if (i > 0) __builtin_not_reached (); will > make GCC assume that i <= 0 on the other edge (of course we'd h

[Bug c/39252] Request new feature __builtin_not_reached();

2009-02-20 Thread rguenth at gcc dot gnu dot org
--- Comment #8 from rguenth at gcc dot gnu dot org 2009-02-20 09:57 --- Though __builtin_not_reached () can be used to implement __builtin_assume (), so it may be more generally useful. if (i > 0) __builtin_not_reached (); will make GCC assume that i <= 0 on the other edge (of course we

[Bug c/39252] Request new feature __builtin_not_reached();

2009-02-19 Thread hpa at zytor dot com
--- Comment #7 from hpa at zytor dot com 2009-02-20 04:34 --- A "noreturn" clobber would work just as well, obviously. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39252

[Bug c/39252] Request new feature __builtin_not_reached();

2009-02-19 Thread jakub at gcc dot gnu dot org
--- Comment #6 from jakub at gcc dot gnu dot org 2009-02-19 23:02 --- Wouldn't be a special "noreturn" clobber in inline asm better suited for this then? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39252

[Bug c/39252] Request new feature __builtin_not_reached();

2009-02-19 Thread hpa at zytor dot com
--- Comment #5 from hpa at zytor dot com 2009-02-19 22:21 --- Let me respectfully disagree, and explain why. *You* can just create a builtin, but for us (the Linux kernel community) we stare a multi-year pipeline in the face whenever we have to request a gcc change. This feature would

[Bug c/39252] Request new feature __builtin_not_reached();

2009-02-19 Thread pinskia at gcc dot gnu dot org
--- Comment #4 from pinskia at gcc dot gnu dot org 2009-02-19 22:14 --- Still you can make a builtin that does that. Even if it is a target builtin. I think of having a target builtin is better than creating a generic __builtin_not_reached. -- http://gcc.gnu.org/bugzilla/show_bug.

[Bug c/39252] Request new feature __builtin_not_reached();

2009-02-19 Thread hpa at zytor dot com
-- hpa at zytor dot com changed: What|Removed |Added Status|WAITING |UNCONFIRMED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39252

[Bug c/39252] Request new feature __builtin_not_reached();

2009-02-19 Thread hpa at zytor dot com
--- Comment #3 from hpa at zytor dot com 2009-02-19 21:58 --- Two reasons: 1. We have no control over what instruction __builtin_trap() will generate. 2. We require the address of the faulting instruction. In particular, we currently have a construct which looks like: #ifdef CONFIG_X8

[Bug c/39252] Request new feature __builtin_not_reached();

2009-02-19 Thread pinskia at gcc dot gnu dot org
--- Comment #2 from pinskia at gcc dot gnu dot org 2009-02-19 21:50 --- Why again is __builtin_trap not useful for this purpose? You mention about "assembly constructs" but why not instead implement those as builtins instead of providing something which really can be abused? -- pins

[Bug c/39252] Request new feature __builtin_not_reached();

2009-02-19 Thread hjl dot tools at gmail dot com
--- Comment #1 from hjl dot tools at gmail dot com 2009-02-19 20:51 --- So __builtin_not_reached is just __builtin_trap which doesn't generate any insn. It shouldn't be too hard to implement. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39252

[Bug c/39252] Request new feature __builtin_not_reached();

2009-02-19 Thread hjl dot tools at gmail dot com
-- hjl dot tools at gmail dot com changed: What|Removed |Added CC||hjl dot tools at gmail dot |