1 lib_LTLIBRARIES = libfirm.la
3 INCLUDES = $(LIBCORE_CFLAGS) \
4 -I$(top_srcdir)/include/libfirm \
5 -I$(top_srcdir)/include/libfirm/adt \
9 -I$(top_srcdir)/ir/adt \
10 -I$(top_srcdir)/ir/ana \
11 -I$(top_srcdir)/ir/arch \
12 -I$(top_srcdir)/ir/be \
13 -I$(top_srcdir)/ir/common \
14 -I$(top_srcdir)/ir/debug \
15 -I$(top_srcdir)/ir/ident \
16 -I$(top_srcdir)/ir/ir \
17 -I$(top_srcdir)/ir/libcore \
18 -I$(top_srcdir)/ir/lower \
19 -I$(top_srcdir)/ir/net \
20 -I$(top_srcdir)/ir/opt \
21 -I$(top_srcdir)/ir/stat \
22 -I$(top_srcdir)/ir/tr \
25 libfirm_la_LDFLAGS = -no-undefined
26 libfirm_la_SOURCES = \
45 ana/analyze_irg_args.c \
51 ana/execution_frequency.c \
52 ana/field_temperature.c \
54 ana/interval_analysis.c \
111 be/bepressurestat.c \
117 be/beschedregpress.c \
120 be/beschedtrivial.c \
121 be/bespillbelady2.c \
122 be/bespillbelady3.c \
139 common/firm_common.c \
164 ir/irlinkednodemap.c \
165 ir/irlinkednodeset.c \
180 libcore/lc_appendable.c \
181 libcore/lc_config_lexer.c \
182 libcore/lc_config_parser.c \
184 libcore/lc_opts_enum.c \
185 libcore/lc_printf.c \
187 lower/lower_calls.c \
188 lower/lower_copyb.c \
191 lower/lower_intrinsics.c \
192 lower/lower_mode_b.c \
193 lower/lower_switch.c \
195 obstack/obstack_printf.c \
198 opt/code_placement.c \
200 opt/jumpthreading.c \
202 opt/critical_edges.c \
216 opt/opt_polymorphy.c \
220 opt/scalar_replace.c \
231 stat/stat_liveness.c \
235 tr/tr_inheritance.c \
238 tr/type_finalization.c \
278 be/bechordal_draw.h \
288 be/bepressurestat.h \
340 ir/irlinkednodemap.h \
346 ir/irlinkednodeset.h \
351 libcore/lc_defines.h \
352 libcore/lc_common_t.h \
353 libcore/lc_parser_t.h \
354 libcore/do_bisonflex.sh \
356 libcore/lc_appendable.h \
357 libcore/lc_config_parser.h \
358 libcore/lc_printf_arg_types.def \
359 libcore/lc_printf.h \
360 libcore/lc_opts_enum.h \
361 libcore/lc_config.h \
362 libcore/lc_opts_t.h \
363 opt/scalar_replace.h \
368 opt/opt_polymorphy.h \
384 ir/gen_irio_export.inl \
385 ir/gen_irio_import.inl \
386 ir/gen_irio_lex.inl \
387 ir/gen_ir_cons.c.inl \
388 ir/gen_irnode.c.inl \
390 be/scripts/generate_emitter_new.pl \
391 be/scripts/generate_emitter.pl \
392 be/scripts/generate_machine.pl \
393 be/scripts/generate_new_opcodes.pl \
394 be/scripts/generate_regalloc_if.pl
396 EXTRA_DIST += libcore/do_bisonflex.sh \
397 libcore/lc_config_parser.y \
398 libcore/lc_config_lexer.l
403 be/ia32/bearch_ia32.c \
404 be/ia32/ia32_architecture.c \
405 be/ia32/ia32_address_mode.c \
406 be/ia32/ia32_common_transform.c \
407 be/ia32/ia32_emitter.c \
408 be/ia32/ia32_finish.c \
410 be/ia32/ia32_intrinsics.c \
411 be/ia32/ia32_map_regs.c \
412 be/ia32/ia32_new_nodes.c \
413 be/ia32/ia32_optimize.c \
414 be/ia32/ia32_transform.c \
415 be/ia32/ia32_util.c \
418 ia32_built_sources = \
419 be/ia32/gen_ia32_emitter.c \
420 be/ia32/gen_ia32_emitter.h \
421 be/ia32/gen_ia32_machine.c \
422 be/ia32/gen_ia32_machine.h \
423 be/ia32/gen_ia32_regalloc_if.c \
424 be/ia32/gen_ia32_regalloc_if.h \
425 be/ia32/gen_ia32_new_nodes.c.inl \
426 be/ia32/gen_ia32_new_nodes.h
427 MAINTAINERCLEANFILES = $(ia32_built_sources)
428 BUILT_SOURCES = $(ia32_built_sources)
429 libfirm_la_SOURCES += $(ia32_sources) $(ia32_built_sources)
432 be/ia32/ia32_spec.pl \
433 be/ia32/ia32_simd_spec.pl \
434 be/ia32/bearch_ia32_t.h \
435 be/ia32/ia32_architecture.h \
436 be/ia32/ia32_address_mode.h \
437 be/ia32/ia32_common_transform.h \
438 be/ia32/ia32_dbg_stat.h \
439 be/ia32/ia32_emitter.h \
440 be/ia32/ia32_finish.h \
442 be/ia32/ia32_map_regs.h \
443 be/ia32/ia32_new_nodes.h \
444 be/ia32/ia32_nodes_attr.h \
445 be/ia32/ia32_optimize.h \
446 be/ia32/ia32_transform.h \
447 be/ia32/ia32_util.h \
450 $(srcdir)/be/ia32/gen_ia32_new_nodes.c.inl $(srcdir)/be/ia32/gen_ia32_new_nodes.h: \
451 be/ia32/ia32_spec.pl be/scripts/generate_new_opcodes.pl
452 $(PERL) $(srcdir)/be/scripts/generate_new_opcodes.pl $(srcdir)/be/ia32/ia32_spec.pl $(srcdir)/be/ia32
454 $(srcdir)/be/ia32/gen_ia32_emitter.c $(srcdir)/be/ia32/gen_ia32_emitter.h: \
455 be/ia32/ia32_spec.pl be/scripts/generate_emitter.pl
456 $(PERL) $(srcdir)/be/scripts/generate_emitter.pl $(srcdir)/be/ia32/ia32_spec.pl $(srcdir)/be/ia32
458 $(srcdir)/be/ia32/gen_ia32_machine.c $(srcdir)/be/ia32/gen_ia32_machine.h: \
459 be/ia32/ia32_spec.pl be/scripts/generate_machine.pl
460 $(PERL) $(srcdir)/be/scripts/generate_machine.pl $(srcdir)/be/ia32/ia32_spec.pl $(srcdir)/be/ia32
462 $(srcdir)/be/ia32/gen_ia32_regalloc_if.c $(srcdir)/be/ia32/gen_ia32_regalloc_if.h: \
463 be/ia32/ia32_spec.pl be/scripts/generate_regalloc_if.pl
464 $(PERL) $(srcdir)/be/scripts/generate_regalloc_if.pl $(srcdir)/be/ia32/ia32_spec.pl $(srcdir)/be/ia32
469 be/arm/bearch_arm.c \
470 be/arm/arm_emitter.c \
471 be/arm/arm_map_regs.c \
472 be/arm/arm_new_nodes.c \
473 be/arm/arm_optimize.c \
474 be/arm/arm_transform.c
475 arm_built_sources = \
476 be/arm/gen_arm_emitter.c \
477 be/arm/gen_arm_emitter.h \
478 be/arm/gen_arm_machine.c \
479 be/arm/gen_arm_machine.h \
480 be/arm/gen_arm_regalloc_if.c \
481 be/arm/gen_arm_regalloc_if.h \
482 be/arm/gen_arm_new_nodes.c.inl \
483 be/arm/gen_arm_new_nodes.h
484 MAINTAINERCLEANFILES += $(arm_built_sources)
485 BUILT_SOURCES += $(arm_built_sources)
486 libfirm_la_SOURCES += $(arm_sources) $(arm_built_sources)
491 be/arm/arm_emitter.h \
492 be/arm/arm_map_regs.h \
493 be/arm/arm_new_nodes.h \
494 be/arm/arm_nodes_attr.h \
495 be/arm/arm_optimize.h \
496 be/arm/arm_transform.h \
497 be/arm/bearch_arm.h \
498 be/arm/bearch_arm_t.h
500 $(srcdir)/be/arm/gen_arm_new_nodes.c.inl $(srcdir)/be/arm/gen_arm_new_nodes.h: \
501 be/arm/arm_spec.pl be/scripts/generate_new_opcodes.pl
502 $(PERL) $(srcdir)/be/scripts/generate_new_opcodes.pl $(srcdir)/be/arm/arm_spec.pl $(srcdir)/be/arm
504 $(srcdir)/be/arm/gen_arm_emitter.c $(srcdir)/be/arm/gen_arm_emitter.h: \
505 be/arm/arm_spec.pl be/scripts/generate_emitter.pl
506 $(PERL) $(srcdir)/be/scripts/generate_emitter.pl $(srcdir)/be/arm/arm_spec.pl $(srcdir)/be/arm
508 $(srcdir)/be/arm/gen_arm_machine.c $(srcdir)/be/arm/gen_arm_machine.h: \
509 be/arm/arm_spec.pl be/scripts/generate_machine.pl
510 $(PERL) $(srcdir)/be/scripts/generate_machine.pl $(srcdir)/be/arm/arm_spec.pl $(srcdir)/be/arm
512 $(srcdir)/be/arm/gen_arm_regalloc_if.c $(srcdir)/be/arm/gen_arm_regalloc_if.h: \
513 be/arm/arm_spec.pl be/scripts/generate_machine.pl
514 $(PERL) $(srcdir)/be/scripts/generate_regalloc_if.pl $(srcdir)/be/arm/arm_spec.pl $(srcdir)/be/arm
519 be/mips/bearch_mips.c \
520 be/mips/mips_emitter.c \
521 be/mips/mips_map_regs.c \
522 be/mips/mips_new_nodes.c \
523 be/mips/mips_scheduler.c \
524 be/mips/mips_transform.c
525 mips_built_sources = \
526 be/mips/gen_mips_emitter.c \
527 be/mips/gen_mips_emitter.h \
528 be/mips/gen_mips_machine.c \
529 be/mips/gen_mips_machine.h \
530 be/mips/gen_mips_regalloc_if.c \
531 be/mips/gen_mips_regalloc_if.h \
532 be/mips/gen_mips_new_nodes.c.inl \
533 be/mips/gen_mips_new_nodes.h
534 MAINTAINERCLEANFILES += $(mips_built_sources)
535 BUILT_SOURCES += $(mips_built_sources)
536 libfirm_la_SOURCES += $(mips_sources) $(mips_built_sources)
539 be/mips/mips_spec.pl \
540 be/mips/bearch_mips.h \
541 be/mips/bearch_mips_t.h \
542 be/mips/mips_emitter.h \
543 be/mips/mips_map_regs.h \
544 be/mips/mips_new_nodes.h \
545 be/mips/mips_nodes_attr.h \
546 be/mips/mips_scheduler.h \
547 be/mips/mips_transform.h \
550 $(srcdir)/be/mips/gen_mips_new_nodes.c.inl $(srcdir)/be/mips/gen_mips_new_nodes.h: \
551 be/mips/mips_spec.pl be/scripts/generate_new_opcodes.pl
552 $(PERL) $(srcdir)/be/scripts/generate_new_opcodes.pl $(srcdir)/be/mips/mips_spec.pl $(srcdir)/be/mips
554 $(srcdir)/be/mips/gen_mips_emitter.c $(srcdir)/be/mips/gen_mips_emitter.h: \
555 be/mips/mips_spec.pl be/scripts/generate_emitter.pl
556 $(PERL) $(srcdir)/be/scripts/generate_emitter.pl $(srcdir)/be/mips/mips_spec.pl $(srcdir)/be/mips
558 $(srcdir)/be/mips/gen_mips_machine.c $(srcdir)/be/mips/gen_mips_machine.h: \
559 be/mips/mips_spec.pl be/scripts/generate_machine.pl
560 $(PERL) $(srcdir)/be/scripts/generate_machine.pl $(srcdir)/be/mips/mips_spec.pl $(srcdir)/be/mips
562 $(srcdir)/be/mips/gen_mips_regalloc_if.c $(srcdir)/be/mips/gen_mips_regalloc_if.h: \
563 be/mips/mips_spec.pl be/scripts/generate_machine.pl
564 $(PERL) $(srcdir)/be/scripts/generate_regalloc_if.pl $(srcdir)/be/mips/mips_spec.pl $(srcdir)/be/mips
569 be/ppc32/bearch_ppc32.c \
570 be/ppc32/ppc32_emitter.c \
571 be/ppc32/ppc32_map_regs.c \
572 be/ppc32/ppc32_new_nodes.c \
573 be/ppc32/ppc32_transform.c \
574 be/ppc32/ppc32_transform_conv.c
575 ppc32_built_sources = \
576 be/ppc32/gen_ppc32_emitter.c \
577 be/ppc32/gen_ppc32_emitter.h \
578 be/ppc32/gen_ppc32_machine.c \
579 be/ppc32/gen_ppc32_machine.h \
580 be/ppc32/gen_ppc32_regalloc_if.c \
581 be/ppc32/gen_ppc32_regalloc_if.h \
582 be/ppc32/gen_ppc32_new_nodes.c.inl \
583 be/ppc32/gen_ppc32_new_nodes.h
584 MAINTAINERCLEANFILES += $(ppc32_built_sources)
585 BUILT_SOURCES += $(ppc32_built_sources)
586 libfirm_la_SOURCES += $(ppc32_sources) $(ppc32_built_sources)
589 be/ppc32/ppc32_spec.pl \
590 be/ppc32/bearch_ppc32.h \
591 be/ppc32/bearch_ppc32_t.h \
592 be/ppc32/ppc32_emitter.h \
593 be/ppc32/ppc32_map_regs.h \
594 be/ppc32/ppc32_new_nodes.h \
595 be/ppc32/ppc32_nodes_attr.h \
596 be/ppc32/ppc32_transform_conv.h \
597 be/ppc32/ppc32_transform.h
599 $(srcdir)/be/ppc32/gen_ppc32_new_nodes.c.inl $(srcdir)/be/ppc32/gen_ppc32_new_nodes.h: \
600 be/ppc32/ppc32_spec.pl be/scripts/generate_new_opcodes.pl
601 $(PERL) $(srcdir)/be/scripts/generate_new_opcodes.pl $(srcdir)/be/ppc32/ppc32_spec.pl $(srcdir)/be/ppc32
603 $(srcdir)/be/ppc32/gen_ppc32_emitter.c $(srcdir)/be/ppc32/gen_ppc32_emitter.h: \
604 be/ppc32/ppc32_spec.pl be/scripts/generate_emitter.pl
605 $(PERL) $(srcdir)/be/scripts/generate_emitter.pl $(srcdir)/be/ppc32/ppc32_spec.pl $(srcdir)/be/ppc32
607 $(srcdir)/be/ppc32/gen_ppc32_machine.c $(srcdir)/be/ppc32/gen_ppc32_machine.h: \
608 be/ppc32/ppc32_spec.pl be/scripts/generate_machine.pl
609 $(PERL) $(srcdir)/be/scripts/generate_machine.pl $(srcdir)/be/ppc32/ppc32_spec.pl $(srcdir)/be/ppc32
611 $(srcdir)/be/ppc32/gen_ppc32_regalloc_if.c $(srcdir)/be/ppc32/gen_ppc32_regalloc_if.h: \
612 be/ppc32/ppc32_spec.pl be/scripts/generate_machine.pl
613 $(PERL) $(srcdir)/be/scripts/generate_regalloc_if.pl $(srcdir)/be/ppc32/ppc32_spec.pl $(srcdir)/be/ppc32
618 be/TEMPLATE/bearch_TEMPLATE.c \
619 be/TEMPLATE/TEMPLATE_emitter.c \
620 be/TEMPLATE/TEMPLATE_map_regs.c \
621 be/TEMPLATE/TEMPLATE_new_nodes.c \
622 be/TEMPLATE/TEMPLATE_transform.c
623 TEMPLATE_built_sources = \
624 be/TEMPLATE/gen_TEMPLATE_emitter.c \
625 be/TEMPLATE/gen_TEMPLATE_emitter.h \
626 be/TEMPLATE/gen_TEMPLATE_machine.c \
627 be/TEMPLATE/gen_TEMPLATE_machine.h \
628 be/TEMPLATE/gen_TEMPLATE_regalloc_if.c \
629 be/TEMPLATE/gen_TEMPLATE_regalloc_if.h \
630 be/TEMPLATE/gen_TEMPLATE_new_nodes.c.inl \
631 be/TEMPLATE/gen_TEMPLATE_new_nodes.h
632 MAINTAINERCLEANFILES += $(TEMPLATE_built_sources)
633 BUILT_SOURCES += $(TEMPLATE_built_sources)
634 libfirm_la_SOURCES += $(TEMPLATE_sources) $(TEMPLATE_built_sources)
637 be/TEMPLATE/TEMPLATE_spec.pl \
638 be/TEMPLATE/bearch_TEMPLATE.h \
639 be/TEMPLATE/bearch_TEMPLATE_t.h \
640 be/TEMPLATE/TEMPLATE_emitter.h \
641 be/TEMPLATE/TEMPLATE_map_regs.h \
642 be/TEMPLATE/TEMPLATE_new_nodes.h \
643 be/TEMPLATE/TEMPLATE_nodes_attr.h \
644 be/TEMPLATE/TEMPLATE_transform.h
646 $(srcdir)/be/TEMPLATE/gen_TEMPLATE_new_nodes.c.inl $(srcdir)/be/TEMPLATE/gen_TEMPLATE_new_nodes.h: \
647 be/TEMPLATE/TEMPLATE_spec.pl be/scripts/generate_new_opcodes.pl
648 $(PERL) $(srcdir)/be/scripts/generate_new_opcodes.pl $(srcdir)/be/TEMPLATE/TEMPLATE_spec.pl $(srcdir)/be/TEMPLATE
650 $(srcdir)/be/TEMPLATE/gen_TEMPLATE_emitter.c $(srcdir)/be/TEMPLATE/gen_TEMPLATE_emitter.h: \
651 be/TEMPLATE/TEMPLATE_spec.pl be/scripts/generate_emitter.pl
652 $(PERL) $(srcdir)/be/scripts/generate_emitter.pl $(srcdir)/be/TEMPLATE/TEMPLATE_spec.pl $(srcdir)/be/TEMPLATE
654 $(srcdir)/be/TEMPLATE/gen_TEMPLATE_machine.c $(srcdir)/be/TEMPLATE/gen_TEMPLATE_machine.h: \
655 be/TEMPLATE/TEMPLATE_spec.pl be/scripts/generate_machine.pl
656 $(PERL) $(srcdir)/be/scripts/generate_machine.pl $(srcdir)/be/TEMPLATE/TEMPLATE_spec.pl $(srcdir)/be/TEMPLATE
658 $(srcdir)/be/TEMPLATE/gen_TEMPLATE_regalloc_if.c $(srcdir)/be/TEMPLATE/gen_TEMPLATE_regalloc_if.h: \
659 be/TEMPLATE/TEMPLATE_spec.pl be/scripts/generate_machine.pl
660 $(PERL) $(srcdir)/be/scripts/generate_regalloc_if.pl $(srcdir)/be/TEMPLATE/TEMPLATE_spec.pl $(srcdir)/be/TEMPLATE