diff options
author | Claudiu Zissulescu <claziss@synopsys.com> | 2018-10-31 12:27:35 +0100 |
---|---|---|
committer | Claudiu Zissulescu <claziss@gcc.gnu.org> | 2018-10-31 12:27:35 +0100 |
commit | aac1c11ce4edd9c2e6af7e9ee8abcaba98d8741f (patch) | |
tree | 07e0408043af521dfe832f263dea8d6e7cea5011 /gcc/tree-outof-ssa.c | |
parent | 8efa18d693207598020f6d7aabb680397ff3815c (diff) | |
download | gcc-aac1c11ce4edd9c2e6af7e9ee8abcaba98d8741f.zip gcc-aac1c11ce4edd9c2e6af7e9ee8abcaba98d8741f.tar.gz gcc-aac1c11ce4edd9c2e6af7e9ee8abcaba98d8741f.tar.bz2 |
[ARC] Add BI/BIH instruction support.
Use BI/BIH instruction to implement casesi pattern. Only ARC V2.
gcc/
xxxx-xx-xx Claudiu Zissulescu <claziss@synopsys.com>
* config/arc/arc.c (arc_override_options): Remove
TARGET_COMPACT_CASESI.
* config/arc/arc.h (ASM_OUTPUT_ADDR_DIFF_ELT): Update.
(CASE_VECTOR_MODE): Likewise.
(CASE_VECTOR_PC_RELATIVE): Likewise.
(CASE_VECTOR_SHORTEN_MODE): Likewise.
(CASE_VECTOR_SHORTEN_MODE1): Delete.
(ADDR_VEC_ALIGN): Update.
(ASM_OUTPUT_CASE_LABEL): Undefine.
(ASM_OUTPUT_BEFORE_CASE_LABEL): Undefine.
(TARGET_BI_BIH): Define.
(DEFAULT_BRANCH_INDEX): Likewise.
* config/arc/arc.md (casesi): Rework to accept BI/BIH
instructions, remove compact_casesi use case.
(casesi_compact_jump): Remove.
(casesi_dispatch): New pattern.
* config/arc/arc.opt: Add mbranch-index option. Deprecate
compact_casesi option.
* doc/invoke.texi: Document mbranch-index option.
gcc/testsuite
xxxx-xx-xx Claudiu Zissulescu <claziss@synopsys.com>
* gcc.target/arc/jumptable.c: New test.
From-SVN: r265675
Diffstat (limited to 'gcc/tree-outof-ssa.c')
0 files changed, 0 insertions, 0 deletions