diff options
author | Roger Sayle <roger@eyesopen.com> | 2003-01-25 17:30:29 +0000 |
---|---|---|
committer | Roger Sayle <sayle@gcc.gnu.org> | 2003-01-25 17:30:29 +0000 |
commit | 9bb231fd7aeb51f5bdfd40e89616ca1a6bc77eee (patch) | |
tree | 9c8023e7b287c57e4f064213bda30e0016c032ec /gcc/function.h | |
parent | a073323c198e956e1645dbe302cb986b78c8a081 (diff) | |
download | gcc-9bb231fd7aeb51f5bdfd40e89616ca1a6bc77eee.zip gcc-9bb231fd7aeb51f5bdfd40e89616ca1a6bc77eee.tar.gz gcc-9bb231fd7aeb51f5bdfd40e89616ca1a6bc77eee.tar.bz2 |
stmt.c (emit_case_bit_tests): New routine to implement suitable switch statements using the equivalent of "if...
* stmt.c (emit_case_bit_tests): New routine to implement suitable
switch statements using the equivalent of "if ((1<<x) & cst) ... ".
(case_bit_test_cmp): New comparison function for "qsort" to order
case_bit_tests by decreasing number of destination nodes.
(lshift_cheap_p): New function to determine if "1 << x" is cheap.
(expand_end_case_type): Use emit_case_bit_tests to implement
suitable switch statments.
(CASE_USE_BIT_TESTS): New target macro to disable the above.
* Makefile.in (stmt.o): Add dependency on optab.h.
* doc/tm.texi (CASE_USE_BIT_TESTS): Document new target macro.
* gcc.c-torture/execute/switch-1.c: New test case.
From-SVN: r61784
Diffstat (limited to 'gcc/function.h')
0 files changed, 0 insertions, 0 deletions