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 \
76 be/bechordal_common.c \
91 be/beemitter_binary.c \
113 be/bepbqpcoloring.c \
116 be/bepressurestat.c \
122 be/beschedregpress.c \
125 be/beschedtrivial.c \
126 be/bespillbelady2.c \
127 be/bespillbelady3.c \
145 common/firm_common.c \
169 ir/irlinkednodemap.c \
170 ir/irlinkednodeset.c \
186 libcore/lc_appendable.c \
187 libcore/lc_config_lexer.c \
188 libcore/lc_config_parser.c \
190 libcore/lc_opts_enum.c \
191 libcore/lc_printf.c \
192 lower/lower_calls.c \
193 lower/lower_copyb.c \
196 lower/lower_intrinsics.c \
197 lower/lower_mode_b.c \
199 lower/lower_switch.c \
201 obstack/obstack_printf.c \
204 opt/code_placement.c \
207 opt/critical_edges.c \
208 opt/dead_code_elimination.c \
212 opt/garbage_collect.c \
216 opt/jumpthreading.c \
225 opt/opt_polymorphy.c \
226 opt/parallelize_mem.c \
230 opt/scalar_replace.c \
241 stat/stat_liveness.c \
246 tr/tr_inheritance.c \
249 tr/type_finalization.c \
271 be/bechordal_common.h \
291 be/bechordal_draw.h \
302 be/bepressurestat.h \
308 be/beemitter_binary.h \
321 be/bepbqpcoloring.h \
357 ir/irlinkednodemap.h \
360 ir/irlinkednodeset.h \
362 libcore/lc_common_t.h \
363 libcore/lc_defines.h \
364 libcore/lc_parser_t.h \
365 libcore/do_bisonflex.sh \
366 libcore/lc_config_parser.h \
368 libcore/lc_printf_arg_types.def \
369 libcore/lc_appendable.h \
370 libcore/lc_printf.h \
371 libcore/lc_config.h \
372 libcore/lc_opts_t.h \
373 libcore/lc_opts_enum.h \
374 opt/scalar_replace.h \
378 opt/opt_polymorphy.h \
389 tr/compound_path_t.h \
396 ir/gen_ir_cons.c.inl \
397 ir/gen_irnode.c.inl \
398 ir/gen_irio_export.inl \
399 ir/gen_irio_import.inl \
400 ir/gen_irio_lex.inl \
401 be/scripts/generate_emitter_new.pl \
402 be/scripts/generate_emitter.pl \
403 be/scripts/generate_machine.pl \
404 be/scripts/generate_new_opcodes.pl \
405 be/scripts/generate_regalloc_if.pl
408 libcore/do_bisonflex.sh \
409 libcore/lc_config_lexer.l \
410 libcore/lc_config_parser.y
415 be/ia32/bearch_ia32.c \
416 be/ia32/ia32_address_mode.c \
417 be/ia32/ia32_architecture.c \
418 be/ia32/ia32_common_transform.c \
419 be/ia32/ia32_emitter.c \
420 be/ia32/ia32_finish.c \
422 be/ia32/ia32_intrinsics.c \
423 be/ia32/ia32_map_regs.c \
424 be/ia32/ia32_new_nodes.c \
425 be/ia32/ia32_optimize.c \
426 be/ia32/ia32_transform.c \
427 be/ia32/ia32_util.c \
430 ia32_built_sources = \
431 be/ia32/gen_ia32_emitter.c \
432 be/ia32/gen_ia32_emitter.h \
433 be/ia32/gen_ia32_machine.c \
434 be/ia32/gen_ia32_machine.h \
435 be/ia32/gen_ia32_new_nodes.c.inl \
436 be/ia32/gen_ia32_new_nodes.h \
437 be/ia32/gen_ia32_regalloc_if.c \
438 be/ia32/gen_ia32_regalloc_if.h
439 MAINTAINERCLEANFILES = $(ia32_built_sources)
440 BUILT_SOURCES = $(ia32_built_sources)
441 libfirm_la_SOURCES += $(ia32_sources) $(ia32_built_sources)
444 be/ia32/bearch_ia32_t.h \
445 be/ia32/ia32_address_mode.h \
446 be/ia32/ia32_architecture.h \
447 be/ia32/ia32_common_transform.h \
448 be/ia32/ia32_dbg_stat.h \
449 be/ia32/ia32_emitter.h \
450 be/ia32/ia32_finish.h \
452 be/ia32/ia32_map_regs.h \
453 be/ia32/ia32_new_nodes.h \
454 be/ia32/ia32_nodes_attr.h \
455 be/ia32/ia32_optimize.h \
456 be/ia32/ia32_spec.pl \
457 be/ia32/ia32_transform.h \
458 be/ia32/ia32_util.h \
461 $(srcdir)/be/ia32/gen_ia32_new_nodes.c.inl $(srcdir)/be/ia32/gen_ia32_new_nodes.h: \
462 be/ia32/ia32_spec.pl be/scripts/generate_new_opcodes.pl
463 $(PERL) $(srcdir)/be/scripts/generate_new_opcodes.pl $(srcdir)/be/ia32/ia32_spec.pl $(srcdir)/be/ia32
465 $(srcdir)/be/ia32/gen_ia32_emitter.c $(srcdir)/be/ia32/gen_ia32_emitter.h: \
466 be/ia32/ia32_spec.pl be/scripts/generate_emitter.pl
467 $(PERL) $(srcdir)/be/scripts/generate_emitter.pl $(srcdir)/be/ia32/ia32_spec.pl $(srcdir)/be/ia32
469 $(srcdir)/be/ia32/gen_ia32_machine.c $(srcdir)/be/ia32/gen_ia32_machine.h: \
470 be/ia32/ia32_spec.pl be/scripts/generate_machine.pl
471 $(PERL) $(srcdir)/be/scripts/generate_machine.pl $(srcdir)/be/ia32/ia32_spec.pl $(srcdir)/be/ia32
473 $(srcdir)/be/ia32/gen_ia32_regalloc_if.c $(srcdir)/be/ia32/gen_ia32_regalloc_if.h: \
474 be/ia32/ia32_spec.pl be/scripts/generate_regalloc_if.pl
475 $(PERL) $(srcdir)/be/scripts/generate_regalloc_if.pl $(srcdir)/be/ia32/ia32_spec.pl $(srcdir)/be/ia32
480 be/arm/arm_emitter.c \
481 be/arm/arm_map_regs.c \
482 be/arm/arm_new_nodes.c \
483 be/arm/arm_optimize.c \
484 be/arm/arm_transform.c \
486 arm_built_sources = \
487 be/arm/gen_arm_emitter.c \
488 be/arm/gen_arm_emitter.h \
489 be/arm/gen_arm_machine.c \
490 be/arm/gen_arm_machine.h \
491 be/arm/gen_arm_new_nodes.c.inl \
492 be/arm/gen_arm_new_nodes.h \
493 be/arm/gen_arm_regalloc_if.c \
494 be/arm/gen_arm_regalloc_if.h
495 MAINTAINERCLEANFILES += $(arm_built_sources)
496 BUILT_SOURCES += $(arm_built_sources)
497 libfirm_la_SOURCES += $(arm_sources) $(arm_built_sources)
501 be/arm/arm_emitter.h \
502 be/arm/arm_map_regs.h \
503 be/arm/arm_new_nodes.h \
504 be/arm/arm_nodes_attr.h \
505 be/arm/arm_optimize.h \
507 be/arm/arm_transform.h \
508 be/arm/bearch_arm.h \
509 be/arm/bearch_arm_t.h
511 $(srcdir)/be/arm/gen_arm_new_nodes.c.inl $(srcdir)/be/arm/gen_arm_new_nodes.h: \
512 be/arm/arm_spec.pl be/scripts/generate_new_opcodes.pl
513 $(PERL) $(srcdir)/be/scripts/generate_new_opcodes.pl $(srcdir)/be/arm/arm_spec.pl $(srcdir)/be/arm
515 $(srcdir)/be/arm/gen_arm_emitter.c $(srcdir)/be/arm/gen_arm_emitter.h: \
516 be/arm/arm_spec.pl be/scripts/generate_emitter.pl
517 $(PERL) $(srcdir)/be/scripts/generate_emitter.pl $(srcdir)/be/arm/arm_spec.pl $(srcdir)/be/arm
519 $(srcdir)/be/arm/gen_arm_machine.c $(srcdir)/be/arm/gen_arm_machine.h: \
520 be/arm/arm_spec.pl be/scripts/generate_machine.pl
521 $(PERL) $(srcdir)/be/scripts/generate_machine.pl $(srcdir)/be/arm/arm_spec.pl $(srcdir)/be/arm
523 $(srcdir)/be/arm/gen_arm_regalloc_if.c $(srcdir)/be/arm/gen_arm_regalloc_if.h: \
524 be/arm/arm_spec.pl be/scripts/generate_machine.pl
525 $(PERL) $(srcdir)/be/scripts/generate_regalloc_if.pl $(srcdir)/be/arm/arm_spec.pl $(srcdir)/be/arm
530 be/mips/bearch_mips.c \
531 be/mips/mips_emitter.c \
532 be/mips/mips_map_regs.c \
533 be/mips/mips_new_nodes.c \
534 be/mips/mips_scheduler.c \
535 be/mips/mips_transform.c
536 mips_built_sources = \
537 be/mips/gen_mips_emitter.c \
538 be/mips/gen_mips_emitter.h \
539 be/mips/gen_mips_machine.c \
540 be/mips/gen_mips_machine.h \
541 be/mips/gen_mips_new_nodes.c.inl \
542 be/mips/gen_mips_new_nodes.h \
543 be/mips/gen_mips_regalloc_if.c \
544 be/mips/gen_mips_regalloc_if.h
545 MAINTAINERCLEANFILES += $(mips_built_sources)
546 BUILT_SOURCES += $(mips_built_sources)
547 libfirm_la_SOURCES += $(mips_sources) $(mips_built_sources)
550 be/mips/bearch_mips.h \
551 be/mips/bearch_mips_t.h \
552 be/mips/mips_emitter.h \
553 be/mips/mips_map_regs.h \
554 be/mips/mips_new_nodes.h \
555 be/mips/mips_nodes_attr.h \
556 be/mips/mips_scheduler.h \
557 be/mips/mips_spec.pl \
558 be/mips/mips_transform.h \
561 $(srcdir)/be/mips/gen_mips_new_nodes.c.inl $(srcdir)/be/mips/gen_mips_new_nodes.h: \
562 be/mips/mips_spec.pl be/scripts/generate_new_opcodes.pl
563 $(PERL) $(srcdir)/be/scripts/generate_new_opcodes.pl $(srcdir)/be/mips/mips_spec.pl $(srcdir)/be/mips
565 $(srcdir)/be/mips/gen_mips_emitter.c $(srcdir)/be/mips/gen_mips_emitter.h: \
566 be/mips/mips_spec.pl be/scripts/generate_emitter.pl
567 $(PERL) $(srcdir)/be/scripts/generate_emitter.pl $(srcdir)/be/mips/mips_spec.pl $(srcdir)/be/mips
569 $(srcdir)/be/mips/gen_mips_machine.c $(srcdir)/be/mips/gen_mips_machine.h: \
570 be/mips/mips_spec.pl be/scripts/generate_machine.pl
571 $(PERL) $(srcdir)/be/scripts/generate_machine.pl $(srcdir)/be/mips/mips_spec.pl $(srcdir)/be/mips
573 $(srcdir)/be/mips/gen_mips_regalloc_if.c $(srcdir)/be/mips/gen_mips_regalloc_if.h: \
574 be/mips/mips_spec.pl be/scripts/generate_machine.pl
575 $(PERL) $(srcdir)/be/scripts/generate_regalloc_if.pl $(srcdir)/be/mips/mips_spec.pl $(srcdir)/be/mips
580 be/ppc32/bearch_ppc32.c \
581 be/ppc32/ppc32_emitter.c \
582 be/ppc32/ppc32_map_regs.c \
583 be/ppc32/ppc32_new_nodes.c \
584 be/ppc32/ppc32_transform.c \
585 be/ppc32/ppc32_transform_conv.c
586 ppc32_built_sources = \
587 be/ppc32/gen_ppc32_emitter.c \
588 be/ppc32/gen_ppc32_emitter.h \
589 be/ppc32/gen_ppc32_machine.c \
590 be/ppc32/gen_ppc32_machine.h \
591 be/ppc32/gen_ppc32_new_nodes.c.inl \
592 be/ppc32/gen_ppc32_new_nodes.h \
593 be/ppc32/gen_ppc32_regalloc_if.c \
594 be/ppc32/gen_ppc32_regalloc_if.h
595 MAINTAINERCLEANFILES += $(ppc32_built_sources)
596 BUILT_SOURCES += $(ppc32_built_sources)
597 libfirm_la_SOURCES += $(ppc32_sources) $(ppc32_built_sources)
600 be/ppc32/bearch_ppc32.h \
601 be/ppc32/bearch_ppc32_t.h \
602 be/ppc32/ppc32_emitter.h \
603 be/ppc32/ppc32_map_regs.h \
604 be/ppc32/ppc32_new_nodes.h \
605 be/ppc32/ppc32_nodes_attr.h \
606 be/ppc32/ppc32_spec.pl \
607 be/ppc32/ppc32_transform.h \
608 be/ppc32/ppc32_transform_conv.h
610 $(srcdir)/be/ppc32/gen_ppc32_new_nodes.c.inl $(srcdir)/be/ppc32/gen_ppc32_new_nodes.h: \
611 be/ppc32/ppc32_spec.pl be/scripts/generate_new_opcodes.pl
612 $(PERL) $(srcdir)/be/scripts/generate_new_opcodes.pl $(srcdir)/be/ppc32/ppc32_spec.pl $(srcdir)/be/ppc32
614 $(srcdir)/be/ppc32/gen_ppc32_emitter.c $(srcdir)/be/ppc32/gen_ppc32_emitter.h: \
615 be/ppc32/ppc32_spec.pl be/scripts/generate_emitter.pl
616 $(PERL) $(srcdir)/be/scripts/generate_emitter.pl $(srcdir)/be/ppc32/ppc32_spec.pl $(srcdir)/be/ppc32
618 $(srcdir)/be/ppc32/gen_ppc32_machine.c $(srcdir)/be/ppc32/gen_ppc32_machine.h: \
619 be/ppc32/ppc32_spec.pl be/scripts/generate_machine.pl
620 $(PERL) $(srcdir)/be/scripts/generate_machine.pl $(srcdir)/be/ppc32/ppc32_spec.pl $(srcdir)/be/ppc32
622 $(srcdir)/be/ppc32/gen_ppc32_regalloc_if.c $(srcdir)/be/ppc32/gen_ppc32_regalloc_if.h: \
623 be/ppc32/ppc32_spec.pl be/scripts/generate_machine.pl
624 $(PERL) $(srcdir)/be/scripts/generate_regalloc_if.pl $(srcdir)/be/ppc32/ppc32_spec.pl $(srcdir)/be/ppc32
629 be/sparc/sparc_emitter.c \
630 be/sparc/sparc_map_regs.c \
631 be/sparc/sparc_new_nodes.c \
632 be/sparc/sparc_transform.c \
633 be/sparc/bearch_sparc.c
634 sparc_built_sources = \
635 be/sparc/gen_sparc_emitter.c \
636 be/sparc/gen_sparc_emitter.h \
637 be/sparc/gen_sparc_machine.c \
638 be/sparc/gen_sparc_machine.h \
639 be/sparc/gen_sparc_new_nodes.c.inl \
640 be/sparc/gen_sparc_new_nodes.h \
641 be/sparc/gen_sparc_regalloc_if.c \
642 be/sparc/gen_sparc_regalloc_if.h
643 MAINTAINERCLEANFILES += $(sparc_built_sources)
644 BUILT_SOURCES += $(sparc_built_sources)
645 libfirm_la_SOURCES += $(sparc_sources) $(sparc_built_sources)
648 be/sparc/sparc_emitter.h \
649 be/sparc/sparc_map_regs.h \
650 be/sparc/sparc_new_nodes.h \
651 be/sparc/sparc_nodes_attr.h \
652 be/sparc/sparc_spec.pl \
653 be/sparc/sparc_transform.h \
654 be/sparc/bearch_sparc.h \
655 be/sparc/bearch_sparc_t.h
657 $(srcdir)/be/sparc/gen_sparc_new_nodes.c.inl $(srcdir)/be/sparc/gen_sparc_new_nodes.h: \
658 be/sparc/sparc_spec.pl be/scripts/generate_new_opcodes.pl
659 $(PERL) $(srcdir)/be/scripts/generate_new_opcodes.pl $(srcdir)/be/sparc/sparc_spec.pl $(srcdir)/be/sparc
661 $(srcdir)/be/sparc/gen_sparc_emitter.c $(srcdir)/be/sparc/gen_sparc_emitter.h: \
662 be/sparc/sparc_spec.pl be/scripts/generate_emitter.pl
663 $(PERL) $(srcdir)/be/scripts/generate_emitter.pl $(srcdir)/be/sparc/sparc_spec.pl $(srcdir)/be/sparc
665 $(srcdir)/be/sparc/gen_sparc_machine.c $(srcdir)/be/sparc/gen_sparc_machine.h: \
666 be/sparc/sparc_spec.pl be/scripts/generate_machine.pl
667 $(PERL) $(srcdir)/be/scripts/generate_machine.pl $(srcdir)/be/sparc/sparc_spec.pl $(srcdir)/be/sparc
669 $(srcdir)/be/sparc/gen_sparc_regalloc_if.c $(srcdir)/be/sparc/gen_sparc_regalloc_if.h: \
670 be/sparc/sparc_spec.pl be/scripts/generate_machine.pl
671 $(PERL) $(srcdir)/be/scripts/generate_regalloc_if.pl $(srcdir)/be/sparc/sparc_spec.pl $(srcdir)/be/sparc
676 be/TEMPLATE/TEMPLATE_emitter.c \
677 be/TEMPLATE/TEMPLATE_new_nodes.c \
678 be/TEMPLATE/TEMPLATE_transform.c \
679 be/TEMPLATE/bearch_TEMPLATE.c
680 TEMPLATE_built_sources = \
681 be/TEMPLATE/gen_TEMPLATE_emitter.c \
682 be/TEMPLATE/gen_TEMPLATE_emitter.h \
683 be/TEMPLATE/gen_TEMPLATE_machine.c \
684 be/TEMPLATE/gen_TEMPLATE_machine.h \
685 be/TEMPLATE/gen_TEMPLATE_new_nodes.c.inl \
686 be/TEMPLATE/gen_TEMPLATE_new_nodes.h \
687 be/TEMPLATE/gen_TEMPLATE_regalloc_if.c \
688 be/TEMPLATE/gen_TEMPLATE_regalloc_if.h
689 MAINTAINERCLEANFILES += $(TEMPLATE_built_sources)
690 BUILT_SOURCES += $(TEMPLATE_built_sources)
691 libfirm_la_SOURCES += $(TEMPLATE_sources) $(TEMPLATE_built_sources)
694 be/TEMPLATE/TEMPLATE_emitter.h \
695 be/TEMPLATE/TEMPLATE_new_nodes.h \
696 be/TEMPLATE/TEMPLATE_nodes_attr.h \
697 be/TEMPLATE/TEMPLATE_spec.pl \
698 be/TEMPLATE/TEMPLATE_transform.h \
699 be/TEMPLATE/bearch_TEMPLATE_t.h
701 $(srcdir)/be/TEMPLATE/gen_TEMPLATE_new_nodes.c.inl $(srcdir)/be/TEMPLATE/gen_TEMPLATE_new_nodes.h: \
702 be/TEMPLATE/TEMPLATE_spec.pl be/scripts/generate_new_opcodes.pl
703 $(PERL) $(srcdir)/be/scripts/generate_new_opcodes.pl $(srcdir)/be/TEMPLATE/TEMPLATE_spec.pl $(srcdir)/be/TEMPLATE
705 $(srcdir)/be/TEMPLATE/gen_TEMPLATE_emitter.c $(srcdir)/be/TEMPLATE/gen_TEMPLATE_emitter.h: \
706 be/TEMPLATE/TEMPLATE_spec.pl be/scripts/generate_emitter.pl
707 $(PERL) $(srcdir)/be/scripts/generate_emitter.pl $(srcdir)/be/TEMPLATE/TEMPLATE_spec.pl $(srcdir)/be/TEMPLATE
709 $(srcdir)/be/TEMPLATE/gen_TEMPLATE_machine.c $(srcdir)/be/TEMPLATE/gen_TEMPLATE_machine.h: \
710 be/TEMPLATE/TEMPLATE_spec.pl be/scripts/generate_machine.pl
711 $(PERL) $(srcdir)/be/scripts/generate_machine.pl $(srcdir)/be/TEMPLATE/TEMPLATE_spec.pl $(srcdir)/be/TEMPLATE
713 $(srcdir)/be/TEMPLATE/gen_TEMPLATE_regalloc_if.c $(srcdir)/be/TEMPLATE/gen_TEMPLATE_regalloc_if.h: \
714 be/TEMPLATE/TEMPLATE_spec.pl be/scripts/generate_machine.pl
715 $(PERL) $(srcdir)/be/scripts/generate_regalloc_if.pl $(srcdir)/be/TEMPLATE/TEMPLATE_spec.pl $(srcdir)/be/TEMPLATE