This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: SH: remove -mbigtable option (PR c/4516)
NIIBE Yutaka wrote:
> Here it is.
>
> 2001-10-13 NIIBE Yutaka <gniibe@m17n.org>
>
> * doc/invoke.texi (Option Summary: SH Options): Remove -mbigtable.
>
> * config/sh/sh.md (*casesi_worker): Handle 0..65535. Set attribute
> "length" with shl_casesi_worker_length.
>
> * config/sh/sh.h (BIGTABLE_BIT, TARGET_BIGTABLE): Removed.
> (TARGET_SWITCHES): Remove -mbigtable option.
> (CASE_VECTOR_MODE): Default to SImode, QImode when optimized
> (ASM_OUTPUT_ADDR_VEC_ELT): Always emit .long.
> (CASE_VECTOR_SHORTEN_MODE): Handle 0..65535.
> (optimized_size): Declared.
>
> * config/sh/sh.c (shl_casesi_worker_length): New function.
> * config/sh/sh-protos.h (shl_casesi_worker_length): New function.
I have done "make check" with this change.
While I believe this change itself is correct, it introduces regressions.
Namely, those three:
gcc.c-torture/compile/20001121-1.c, -O0
gcc.c-torture/execute/920721-4.c execution, -O0
gcc.c-torture/execute/920909-1.c execution, -O0
Any suggestions?
--