-I$(top_srcdir)/ir/debug \
-I$(top_srcdir)/ir/ident \
-I$(top_srcdir)/ir/ir \
+ -I$(top_srcdir)/ir/kaps \
-I$(top_srcdir)/ir/libcore \
-I$(top_srcdir)/ir/lower \
-I$(top_srcdir)/ir/net \
-I$(top_srcdir)/ir/tr \
-I$(top_srcdir)/ir/tv
-libfirm_la_LDFLAGS = -no-undefined -release $(LT_RELEASE) -version-info $(LT_VERSION)
+libfirm_la_LDFLAGS = -no-undefined -version-info $(LT_VERSION)
libfirm_la_SOURCES = \
adt/array.c \
adt/bipartite.c \
ana/dfs.c \
ana/execfreq.c \
ana/execution_frequency.c \
- ana/field_temperature.c \
- ana/height.c \
+ ana/heights.c \
ana/interval_analysis.c \
ana/irbackedge.c \
ana/ircfscc.c \
ana/irmemory.c \
ana/irouts.c \
ana/irscc.c \
- ana/irsimpletype.c \
ana/irtypeinfo.c \
ana/rta.c \
ana/structure.c \
ana/trouts.c \
ana/vrp.c \
be/beabi.c \
+ be/beabihelper.c \
be/bearch.c \
be/beblocksched.c \
be/bechordal.c \
be/becopyheur2.c \
be/becopyheur4.c \
be/becopyheur.c \
- be/becopyilp1.c \
be/becopyilp2.c \
be/becopyilp.c \
be/becopyopt.c \
- be/becopypbqp.c \
be/becopystat.c \
be/bedbgout.c \
be/bedomfront.c \
- be/bedump_minir.c \
be/beemitter_binary.c \
be/beemitter.c \
be/beflags.c \
be/begnuas.c \
be/beifg.c \
- be/beifg_clique.c \
- be/beifg_list.c \
- be/beifg_pointer.c \
- be/beifg_std.c \
- be/beilpsched.c \
be/beinfo.c \
be/beinsn.c \
be/beirg.c \
be/bepbqpcoloring.c \
be/bepeephole.c \
be/beprefalloc.c \
- be/bepressurestat.c \
be/bera.c \
be/besched.c \
- be/beschedmris.c \
be/beschednormal.c \
be/beschedrand.c \
be/beschedregpress.c \
- be/beschedrss.c \
be/beschedtrace.c \
be/beschedtrivial.c \
- be/bespillbelady2.c \
- be/bespillbelady3.c \
be/bespillbelady.c \
be/bespill.c \
be/bespilldaemel.c \
be/bessaconstr.c \
be/bessadestr.c \
be/bestabs.c \
+ be/bestack.c \
be/bestat.c \
be/bestate.c \
be/betranshlp.c \
common/timing.c \
debug/dbginfo.c \
debug/debugger.c \
- debug/seqnumbers.c \
ident/ident.c \
ident/mangle.c \
ir/instrument.c \
ir/irarch.c \
ir/irargs.c \
- ir/ircgcons.c \
ir/ircons.c \
ir/irdump.c \
ir/irdumptxt.c \
ir/irprofile.c \
ir/irprog.c \
ir/irssacons.c \
- ir/irvrfy.c \
- ir/pseudo_irg.c \
+ ir/irverify.c \
ir/valueset.c \
libcore/lc_appendable.c \
- libcore/lc_config_lexer.c \
- libcore/lc_config_parser.c \
libcore/lc_opts.c \
libcore/lc_opts_enum.c \
libcore/lc_printf.c \
stat/pattern_dmp.c \
stat/stat_dmp.c \
stat/statev.c \
- stat/stat_liveness.c \
stat/stat_timing.c \
tr/compound_path.c \
tr/entity.c \
tr/tpop.c \
tr/tr_inheritance.c \
- tr/trvrfy.c \
+ tr/trverify.c \
tr/type.c \
tr/type_finalization.c \
tr/typewalk.c \
tv/fltcalc.c \
tv/strcalc.c \
- tv/tv.c
+ tv/tv.c \
+ kaps/brute_force.c \
+ kaps/bucket.c \
+ kaps/heuristical.c \
+ kaps/heuristical_co.c \
+ kaps/heuristical_co_ld.c \
+ kaps/html_dumper.c \
+ kaps/kaps.c \
+ kaps/matrix.c \
+ kaps/optimal.c \
+ kaps/pbqp_edge.c \
+ kaps/pbqp_node.c \
+ kaps/vector.c
EXTRA_DIST = \
- adt/bitset.h \
adt/array_t.h \
- adt/raw_bitset.h \
- adt/compiler.h \
adt/bitfiddle.h \
- ana/irdom_t.h \
+ adt/bitset.h \
+ adt/compiler.h \
+ adt/raw_bitset.h \
+ adt/util.h \
+ ana/absgraph.h \
+ ana/dfs.h \
ana/dfs_t.h \
ana/irbackedge_t.h \
- ana/dfs.h \
+ ana/irdom_t.h \
+ ana/irextbb_t.h \
ana/irlivechk.h \
- ana/irmemory_t.h \
- ana/absgraph.h \
ana/irloop_t.h \
- ana/irextbb_t.h \
- be/belive_t.h \
- be/bechordal_common.h \
- be/beifg_impl.h \
- be/becopypbqp.h \
- be/bepeephole.h \
+ ana/irmemory_t.h \
+ be/be_dbgout.h \
be/be_dbgout_t.h \
- be/bessaconstr.h \
- be/beifg_t.h \
- be/beblocksched.h \
- be/becopyilp_t.h \
- be/beverify.h \
- be/bemachine.h \
- be/beemitter.h \
- be/begnuas.h \
- be/becopyopt_t.h \
- be/benode.h \
- be/bemodule.h \
be/be_t.h \
be/be_types.h \
- be/belistsched.h \
- be/bessadestr.h \
- be/bechordal_draw.h \
be/beabi.h \
- be/beflags.h \
+ be/beabihelper.h \
+ be/bearch.h \
+ be/beblocksched.h \
+ be/bechordal.h \
+ be/bechordal_common.h \
+ be/bechordal_draw.h \
be/bechordal_t.h \
- be/beifg.h \
- be/bespillslots.h \
- be/beschedmris.h \
- be/besched.h \
- be/beloopana.h \
- be/beilpsched.h \
+ be/becopyilp_t.h \
be/becopyopt.h \
- be/bepressurestat.h \
- be/bestat.h \
- be/beuses.h \
- be/bestate.h \
- be/bespillutil.h \
- be/bera.h \
+ be/becopyopt_t.h \
+ be/becopystat.h \
+ be/bedomfront.h \
+ be/beemitter.h \
be/beemitter_binary.h \
- be/beirgmod.h \
+ be/beflags.h \
+ be/begnuas.h \
+ be/beifg.h \
+ be/beinfo.h \
be/beinsn_t.h \
- be/betranshlp.h \
+ be/beintlive_t.h \
+ be/beirg.h \
+ be/beirgmod.h \
+ be/belistsched.h \
be/belive.h \
- be/bestatevent.h \
- be/beutil.h \
- be/be_dbgout.h \
- be/bespill.h \
- be/bedomfront.h \
+ be/belive_t.h \
+ be/beloopana.h \
be/belower.h \
- be/beinfo.h \
- be/beintlive_t.h \
- be/bepbqpcoloring.h \
- be/becopystat.h \
+ be/bemachine.h \
+ be/bemodule.h \
be/bemodule_t.h \
- be/bechordal.h \
- be/bedump_minir.h \
- be/bearch.h \
- be/beschedrss.h \
- be/beirg.h \
+ be/benode.h \
+ be/bepbqpcoloring.h \
+ be/bepeephole.h \
+ be/bera.h \
+ be/besched.h \
+ be/bespill.h \
+ be/bespillslots.h \
+ be/bespillutil.h \
+ be/bessaconstr.h \
+ be/bessadestr.h \
+ be/bestack.h \
+ be/bestat.h \
+ be/bestate.h \
+ be/bestatevent.h \
+ be/betranshlp.h \
+ be/beuses.h \
+ be/beutil.h \
+ be/beverify.h \
+ common/debug.h \
common/error.h \
common/irtools.h \
- common/debug.h \
debug/dbginfo_t.h \
debug/debugger.h \
ident/ident_t.h \
- ir/gen_irnode.h \
- ir/irmode_t.h \
- ir/irvrfy_t.h \
- ir/iredges_t.h \
- ir/ircons_t.h \
- ir/irpass_t.h \
- ir/irprofile.h \
- ir/irflag_t.def \
+ ir/instrument.h \
ir/irargs_t.h \
- ir/irnodemap.h \
- ir/irgraph_t.h \
ir/irbitset.h \
+ ir/ircons_t.h \
+ ir/irdump_t.h \
+ ir/iredges_t.h \
+ ir/iredgeset.h \
+ ir/irflag_t.def \
ir/irflag_t.h \
- ir/valueset.h \
- ir/irnodeset.h \
+ ir/irgraph_t.h \
+ ir/irmode_t.h \
+ ir/irnode_t.h \
ir/irop_t.h \
+ ir/iropt_t.h \
ir/irphase_t.h \
- ir/instrument.h \
- ir/iredgeset.h \
- ir/irdump_t.h \
+ ir/irprintf_t.h \
ir/irprog_t.h \
- ir/irtypes.h \
- ir/irnode_t.h \
ir/irlinkednodemap.h \
- ir/iropt_t.h \
- ir/irprintf_t.h \
ir/irlinkednodeset.h \
+ ir/irnodemap.h \
+ ir/irnodeset.h \
+ ir/irpass_t.h \
ir/irphase.h \
- libcore/lc_common_t.h \
- libcore/lc_defines.h \
- libcore/lc_parser_t.h \
- libcore/do_bisonflex.sh \
- libcore/lc_config_parser.h \
- libcore/lc_opts.h \
- libcore/lc_printf_arg_types.def \
+ ir/irprofile.h \
+ ir/irtypes.h \
+ ir/irverify_t.h \
+ ir/valueset.h \
+ ir/gen_irnode.h \
libcore/lc_appendable.h \
- libcore/lc_printf.h \
+ libcore/lc_common_t.h \
libcore/lc_config.h \
- libcore/lc_opts_t.h \
+ libcore/lc_opts.h \
+ libcore/lc_defines.h \
libcore/lc_opts_enum.h \
- opt/scalar_replace.h \
- opt/reassoc_t.h \
- opt/opt_init.h \
- opt/opt_confirms.h \
+ libcore/lc_opts_t.h \
+ libcore/lc_printf.h \
+ libcore/lc_printf_arg_types.def \
opt/opt_polymorphy.h \
+ opt/reassoc_t.h \
+ opt/scalar_replace.h \
opt/iropt_dbg.h \
- stat/statev.h \
- stat/stat_dmp.h \
+ opt/opt_init.h \
+ stat/counter.h \
+ stat/dags.h \
stat/firmstat_t.h \
stat/pattern.h \
stat/pattern_dmp.h \
- stat/dags.h \
- stat/counter.h \
+ stat/stat_dmp.h \
stat/stat_timing.h \
- tr/entity_t.h \
+ stat/statev.h \
tr/compound_path_t.h \
- tr/type_t.h \
+ tr/entity_t.h \
tr/tpop_t.h \
+ tr/type_t.h \
+ tv/fltcalc.h \
tv/strcalc.h \
tv/tv_t.h \
- tv/fltcalc.h \
- ir/gen_irop.c.inl \
+ kaps/brute_force.h \
+ kaps/bucket.h \
+ kaps/bucket_t.h \
+ kaps/heuristical.h \
+ kaps/heuristical_co.h \
+ kaps/heuristical_co_ld.h \
+ kaps/html_dumper.h \
+ kaps/kaps.h \
+ kaps/matrix.h \
+ kaps/matrix_t.h \
+ kaps/optimal.h \
+ kaps/pbqp_edge.h \
+ kaps/pbqp_edge_t.h \
+ kaps/pbqp_node.h \
+ kaps/pbqp_node_t.h \
+ kaps/pbqp_t.h \
+ kaps/vector.h \
+ kaps/vector_t.h \
ir/gen_ir_cons.c.inl \
ir/gen_irnode.c.inl \
+ ir/gen_irop.c.inl \
ir/gen_irio_export.inl \
ir/gen_irio_import.inl \
ir/gen_irio_lex.inl \
be/scripts/generate_new_opcodes.pl \
be/scripts/generate_regalloc_if.pl
-EXTRA_DIST += \
- libcore/do_bisonflex.sh \
- libcore/lc_config_lexer.l \
- libcore/lc_config_parser.y
-
# ia32 backend
-
ia32_sources = \
be/ia32/bearch_ia32.c \
be/ia32/ia32_address_mode.c \
be/ia32/ia32_finish.c \
be/ia32/ia32_fpu.c \
be/ia32/ia32_intrinsics.c \
- be/ia32/ia32_map_regs.c \
be/ia32/ia32_new_nodes.c \
be/ia32/ia32_optimize.c \
be/ia32/ia32_transform.c \
- be/ia32/ia32_util.c \
be/ia32/ia32_x87.c
ia32_built_sources = \
be/ia32/ia32_emitter.h \
be/ia32/ia32_finish.h \
be/ia32/ia32_fpu.h \
- be/ia32/ia32_map_regs.h \
be/ia32/ia32_new_nodes.h \
be/ia32/ia32_nodes_attr.h \
be/ia32/ia32_optimize.h \
be/ia32/ia32_spec.pl \
be/ia32/ia32_transform.h \
- be/ia32/ia32_util.h \
be/ia32/ia32_x87.h
$(srcdir)/be/ia32/gen_ia32_new_nodes.c.inl $(srcdir)/be/ia32/gen_ia32_new_nodes.h: \
arm_sources = \
be/arm/arm_emitter.c \
- be/arm/arm_map_regs.c \
be/arm/arm_new_nodes.c \
be/arm/arm_optimize.c \
be/arm/arm_transform.c \
+ be/arm/arm_map_regs.c \
+ be/arm/arm_cconv.c \
be/arm/bearch_arm.c
arm_built_sources = \
be/arm/gen_arm_emitter.c \
EXTRA_DIST += \
be/arm/arm_emitter.h \
- be/arm/arm_map_regs.h \
be/arm/arm_new_nodes.h \
be/arm/arm_nodes_attr.h \
be/arm/arm_optimize.h \
be/arm/arm_spec.pl \
be/arm/arm_transform.h \
- be/arm/bearch_arm.h \
+ be/arm/arm_map_regs.h \
+ be/arm/arm_cconv.h \
be/arm/bearch_arm_t.h
$(srcdir)/be/arm/gen_arm_new_nodes.c.inl $(srcdir)/be/arm/gen_arm_new_nodes.h: \
be/arm/arm_spec.pl be/scripts/generate_machine.pl
$(PERL) $(srcdir)/be/scripts/generate_regalloc_if.pl $(srcdir)/be/arm/arm_spec.pl $(srcdir)/be/arm
-# mips backend
-
-mips_sources = \
- be/mips/bearch_mips.c \
- be/mips/mips_emitter.c \
- be/mips/mips_map_regs.c \
- be/mips/mips_new_nodes.c \
- be/mips/mips_scheduler.c \
- be/mips/mips_transform.c
-mips_built_sources = \
- be/mips/gen_mips_emitter.c \
- be/mips/gen_mips_emitter.h \
- be/mips/gen_mips_machine.c \
- be/mips/gen_mips_machine.h \
- be/mips/gen_mips_new_nodes.c.inl \
- be/mips/gen_mips_new_nodes.h \
- be/mips/gen_mips_regalloc_if.c \
- be/mips/gen_mips_regalloc_if.h
-MAINTAINERCLEANFILES += $(mips_built_sources)
-BUILT_SOURCES += $(mips_built_sources)
-libfirm_la_SOURCES += $(mips_sources) $(mips_built_sources)
-
-EXTRA_DIST += \
- be/mips/bearch_mips.h \
- be/mips/bearch_mips_t.h \
- be/mips/mips_emitter.h \
- be/mips/mips_map_regs.h \
- be/mips/mips_new_nodes.h \
- be/mips/mips_nodes_attr.h \
- be/mips/mips_scheduler.h \
- be/mips/mips_spec.pl \
- be/mips/mips_transform.h \
- be/mips/mips_util.h
-
-$(srcdir)/be/mips/gen_mips_new_nodes.c.inl $(srcdir)/be/mips/gen_mips_new_nodes.h: \
- be/mips/mips_spec.pl be/scripts/generate_new_opcodes.pl
- $(PERL) $(srcdir)/be/scripts/generate_new_opcodes.pl $(srcdir)/be/mips/mips_spec.pl $(srcdir)/be/mips
-
-$(srcdir)/be/mips/gen_mips_emitter.c $(srcdir)/be/mips/gen_mips_emitter.h: \
- be/mips/mips_spec.pl be/scripts/generate_emitter.pl
- $(PERL) $(srcdir)/be/scripts/generate_emitter.pl $(srcdir)/be/mips/mips_spec.pl $(srcdir)/be/mips
-
-$(srcdir)/be/mips/gen_mips_machine.c $(srcdir)/be/mips/gen_mips_machine.h: \
- be/mips/mips_spec.pl be/scripts/generate_machine.pl
- $(PERL) $(srcdir)/be/scripts/generate_machine.pl $(srcdir)/be/mips/mips_spec.pl $(srcdir)/be/mips
-
-$(srcdir)/be/mips/gen_mips_regalloc_if.c $(srcdir)/be/mips/gen_mips_regalloc_if.h: \
- be/mips/mips_spec.pl be/scripts/generate_machine.pl
- $(PERL) $(srcdir)/be/scripts/generate_regalloc_if.pl $(srcdir)/be/mips/mips_spec.pl $(srcdir)/be/mips
-
-# ppc32 backend
-
-ppc32_sources = \
- be/ppc32/bearch_ppc32.c \
- be/ppc32/ppc32_emitter.c \
- be/ppc32/ppc32_map_regs.c \
- be/ppc32/ppc32_new_nodes.c \
- be/ppc32/ppc32_transform.c \
- be/ppc32/ppc32_transform_conv.c
-ppc32_built_sources = \
- be/ppc32/gen_ppc32_emitter.c \
- be/ppc32/gen_ppc32_emitter.h \
- be/ppc32/gen_ppc32_machine.c \
- be/ppc32/gen_ppc32_machine.h \
- be/ppc32/gen_ppc32_new_nodes.c.inl \
- be/ppc32/gen_ppc32_new_nodes.h \
- be/ppc32/gen_ppc32_regalloc_if.c \
- be/ppc32/gen_ppc32_regalloc_if.h
-MAINTAINERCLEANFILES += $(ppc32_built_sources)
-BUILT_SOURCES += $(ppc32_built_sources)
-libfirm_la_SOURCES += $(ppc32_sources) $(ppc32_built_sources)
-
-EXTRA_DIST += \
- be/ppc32/bearch_ppc32.h \
- be/ppc32/bearch_ppc32_t.h \
- be/ppc32/ppc32_emitter.h \
- be/ppc32/ppc32_map_regs.h \
- be/ppc32/ppc32_new_nodes.h \
- be/ppc32/ppc32_nodes_attr.h \
- be/ppc32/ppc32_spec.pl \
- be/ppc32/ppc32_transform.h \
- be/ppc32/ppc32_transform_conv.h
-
-$(srcdir)/be/ppc32/gen_ppc32_new_nodes.c.inl $(srcdir)/be/ppc32/gen_ppc32_new_nodes.h: \
- be/ppc32/ppc32_spec.pl be/scripts/generate_new_opcodes.pl
- $(PERL) $(srcdir)/be/scripts/generate_new_opcodes.pl $(srcdir)/be/ppc32/ppc32_spec.pl $(srcdir)/be/ppc32
-
-$(srcdir)/be/ppc32/gen_ppc32_emitter.c $(srcdir)/be/ppc32/gen_ppc32_emitter.h: \
- be/ppc32/ppc32_spec.pl be/scripts/generate_emitter.pl
- $(PERL) $(srcdir)/be/scripts/generate_emitter.pl $(srcdir)/be/ppc32/ppc32_spec.pl $(srcdir)/be/ppc32
-
-$(srcdir)/be/ppc32/gen_ppc32_machine.c $(srcdir)/be/ppc32/gen_ppc32_machine.h: \
- be/ppc32/ppc32_spec.pl be/scripts/generate_machine.pl
- $(PERL) $(srcdir)/be/scripts/generate_machine.pl $(srcdir)/be/ppc32/ppc32_spec.pl $(srcdir)/be/ppc32
-
-$(srcdir)/be/ppc32/gen_ppc32_regalloc_if.c $(srcdir)/be/ppc32/gen_ppc32_regalloc_if.h: \
- be/ppc32/ppc32_spec.pl be/scripts/generate_machine.pl
- $(PERL) $(srcdir)/be/scripts/generate_regalloc_if.pl $(srcdir)/be/ppc32/ppc32_spec.pl $(srcdir)/be/ppc32
-
# sparc backend
sparc_sources = \
be/sparc/sparc_emitter.c \
- be/sparc/sparc_map_regs.c \
be/sparc/sparc_new_nodes.c \
be/sparc/sparc_transform.c \
+ be/sparc/sparc_cconv.c \
+ be/sparc/sparc_finish.c \
be/sparc/bearch_sparc.c
sparc_built_sources = \
be/sparc/gen_sparc_emitter.c \
EXTRA_DIST += \
be/sparc/sparc_emitter.h \
- be/sparc/sparc_map_regs.h \
be/sparc/sparc_new_nodes.h \
be/sparc/sparc_nodes_attr.h \
be/sparc/sparc_spec.pl \
+ be/sparc/sparc_cconv.h \
be/sparc/sparc_transform.h \
- be/sparc/bearch_sparc.h \
be/sparc/bearch_sparc_t.h
$(srcdir)/be/sparc/gen_sparc_new_nodes.c.inl $(srcdir)/be/sparc/gen_sparc_new_nodes.h: \