diff options
author | Robin Dapp <rdapp@ventanamicro.com> | 2023-10-12 11:23:26 +0200 |
---|---|---|
committer | Robin Dapp <rdapp@ventanamicro.com> | 2023-10-31 13:34:28 +0100 |
commit | 184378027e92f51e02d3649e0ca523f487fd2810 (patch) | |
tree | a05e1b0ffcb081261aa94b96fc4700fa0748ee2e /libcpp/line-map.cc | |
parent | 15404016d96dca9132b952980cda24cae33b3ee0 (diff) | |
download | gcc-184378027e92f51e02d3649e0ca523f487fd2810.zip gcc-184378027e92f51e02d3649e0ca523f487fd2810.tar.gz gcc-184378027e92f51e02d3649e0ca523f487fd2810.tar.bz2 |
genemit: Split insn-emit.cc into several partitions.
On riscv insn-emit.cc has grown to over 1.2 mio lines of code and
compiling it takes considerable time.
Therefore, this patch adjust genemit to create several partitions
(insn-emit-1.cc to insn-emit-n.cc). The available patterns are
written to the given files in a sequential fashion.
Similar to match.pd a configure option --with-emitinsn-partitions=num
is introduced that makes the number of partition configurable.
gcc/ChangeLog:
PR bootstrap/84402
PR target/111600
* Makefile.in: Handle split insn-emit.cc.
* configure: Regenerate.
* configure.ac: Add --with-insnemit-partitions.
* genemit.cc (output_peephole2_scratches): Print to file instead
of stdout.
(print_code): Ditto.
(gen_rtx_scratch): Ditto.
(gen_exp): Ditto.
(gen_emit_seq): Ditto.
(emit_c_code): Ditto.
(gen_insn): Ditto.
(gen_expand): Ditto.
(gen_split): Ditto.
(output_add_clobbers): Ditto.
(output_added_clobbers_hard_reg_p): Ditto.
(print_overload_arguments): Ditto.
(print_overload_test): Ditto.
(handle_overloaded_code_for): Ditto.
(handle_overloaded_gen): Ditto.
(print_header): New function.
(handle_arg): New function.
(main): Split output into 10 files.
* gensupport.cc (count_patterns): New function.
* gensupport.h (count_patterns): Define.
* read-md.cc (md_reader::print_md_ptr_loc): Add file argument.
* read-md.h (class md_reader): Change definition.
Diffstat (limited to 'libcpp/line-map.cc')
0 files changed, 0 insertions, 0 deletions