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/kaps \
18 -I$(top_srcdir)/ir/libcore \
19 -I$(top_srcdir)/ir/lower \
20 -I$(top_srcdir)/ir/net \
21 -I$(top_srcdir)/ir/opt \
22 -I$(top_srcdir)/ir/stat \
23 -I$(top_srcdir)/ir/tr \
26 libfirm_la_LDFLAGS = -no-undefined -version-info $(LT_VERSION)
27 libfirm_la_SOURCES = \
46 ana/analyze_irg_args.c \
52 ana/execution_frequency.c \
54 ana/interval_analysis.c \
76 be/bechordal_common.c \
88 be/beemitter_binary.c \
105 be/bepbqpcoloring.c \
112 be/beschedregpress.c \
114 be/beschedtrivial.c \
133 common/firm_common.c \
155 ir/irlinkednodemap.c \
156 ir/irlinkednodeset.c \
171 libcore/lc_appendable.c \
173 libcore/lc_opts_enum.c \
174 libcore/lc_printf.c \
175 lower/lower_calls.c \
176 lower/lower_copyb.c \
179 lower/lower_intrinsics.c \
180 lower/lower_mode_b.c \
182 lower/lower_switch.c \
184 obstack/obstack_printf.c \
187 opt/code_placement.c \
190 opt/critical_edges.c \
191 opt/dead_code_elimination.c \
195 opt/garbage_collect.c \
199 opt/jumpthreading.c \
208 opt/opt_polymorphy.c \
209 opt/parallelize_mem.c \
213 opt/scalar_replace.c \
228 tr/tr_inheritance.c \
231 tr/type_finalization.c \
239 kaps/heuristical_co.c \
240 kaps/heuristical_co_ld.c \
274 be/bechordal_common.h \
275 be/bechordal_draw.h \
283 be/beemitter_binary.h \
301 be/bepbqpcoloring.h \
341 ir/irlinkednodemap.h \
342 ir/irlinkednodeset.h \
352 libcore/lc_appendable.h \
353 libcore/lc_common_t.h \
354 libcore/lc_config.h \
356 libcore/lc_defines.h \
357 libcore/lc_opts_enum.h \
358 libcore/lc_opts_t.h \
359 libcore/lc_printf.h \
360 libcore/lc_printf_arg_types.def \
361 opt/opt_polymorphy.h \
363 opt/scalar_replace.h \
374 tr/compound_path_t.h \
385 kaps/heuristical_co.h \
386 kaps/heuristical_co_ld.h \
399 ir/gen_ir_cons.c.inl \
400 ir/gen_irnode.c.inl \
402 ir/gen_irio_export.inl \
403 ir/gen_irio_import.inl \
404 ir/gen_irio_lex.inl \
405 be/scripts/generate_emitter_new.pl \
406 be/scripts/generate_emitter.pl \
407 be/scripts/generate_machine.pl \
408 be/scripts/generate_new_opcodes.pl \
409 be/scripts/generate_regalloc_if.pl
413 be/ia32/bearch_ia32.c \
414 be/ia32/ia32_address_mode.c \
415 be/ia32/ia32_architecture.c \
416 be/ia32/ia32_common_transform.c \
417 be/ia32/ia32_emitter.c \
418 be/ia32/ia32_finish.c \
420 be/ia32/ia32_intrinsics.c \
421 be/ia32/ia32_new_nodes.c \
422 be/ia32/ia32_optimize.c \
423 be/ia32/ia32_transform.c \
426 ia32_built_sources = \
427 be/ia32/gen_ia32_emitter.c \
428 be/ia32/gen_ia32_emitter.h \
429 be/ia32/gen_ia32_machine.c \
430 be/ia32/gen_ia32_machine.h \
431 be/ia32/gen_ia32_new_nodes.c.inl \
432 be/ia32/gen_ia32_new_nodes.h \
433 be/ia32/gen_ia32_regalloc_if.c \
434 be/ia32/gen_ia32_regalloc_if.h
435 MAINTAINERCLEANFILES = $(ia32_built_sources)
436 BUILT_SOURCES = $(ia32_built_sources)
437 libfirm_la_SOURCES += $(ia32_sources) $(ia32_built_sources)
440 be/ia32/bearch_ia32_t.h \
441 be/ia32/ia32_address_mode.h \
442 be/ia32/ia32_architecture.h \
443 be/ia32/ia32_common_transform.h \
444 be/ia32/ia32_dbg_stat.h \
445 be/ia32/ia32_emitter.h \
446 be/ia32/ia32_finish.h \
448 be/ia32/ia32_new_nodes.h \
449 be/ia32/ia32_nodes_attr.h \
450 be/ia32/ia32_optimize.h \
451 be/ia32/ia32_spec.pl \
452 be/ia32/ia32_transform.h \
455 $(srcdir)/be/ia32/gen_ia32_new_nodes.c.inl $(srcdir)/be/ia32/gen_ia32_new_nodes.h: \
456 be/ia32/ia32_spec.pl be/scripts/generate_new_opcodes.pl
457 $(PERL) $(srcdir)/be/scripts/generate_new_opcodes.pl $(srcdir)/be/ia32/ia32_spec.pl $(srcdir)/be/ia32
459 $(srcdir)/be/ia32/gen_ia32_emitter.c $(srcdir)/be/ia32/gen_ia32_emitter.h: \
460 be/ia32/ia32_spec.pl be/scripts/generate_emitter.pl
461 $(PERL) $(srcdir)/be/scripts/generate_emitter.pl $(srcdir)/be/ia32/ia32_spec.pl $(srcdir)/be/ia32
463 $(srcdir)/be/ia32/gen_ia32_machine.c $(srcdir)/be/ia32/gen_ia32_machine.h: \
464 be/ia32/ia32_spec.pl be/scripts/generate_machine.pl
465 $(PERL) $(srcdir)/be/scripts/generate_machine.pl $(srcdir)/be/ia32/ia32_spec.pl $(srcdir)/be/ia32
467 $(srcdir)/be/ia32/gen_ia32_regalloc_if.c $(srcdir)/be/ia32/gen_ia32_regalloc_if.h: \
468 be/ia32/ia32_spec.pl be/scripts/generate_regalloc_if.pl
469 $(PERL) $(srcdir)/be/scripts/generate_regalloc_if.pl $(srcdir)/be/ia32/ia32_spec.pl $(srcdir)/be/ia32
474 be/arm/arm_emitter.c \
475 be/arm/arm_new_nodes.c \
476 be/arm/arm_optimize.c \
477 be/arm/arm_transform.c \
478 be/arm/arm_map_regs.c \
481 arm_built_sources = \
482 be/arm/gen_arm_emitter.c \
483 be/arm/gen_arm_emitter.h \
484 be/arm/gen_arm_machine.c \
485 be/arm/gen_arm_machine.h \
486 be/arm/gen_arm_new_nodes.c.inl \
487 be/arm/gen_arm_new_nodes.h \
488 be/arm/gen_arm_regalloc_if.c \
489 be/arm/gen_arm_regalloc_if.h
490 MAINTAINERCLEANFILES += $(arm_built_sources)
491 BUILT_SOURCES += $(arm_built_sources)
492 libfirm_la_SOURCES += $(arm_sources) $(arm_built_sources)
496 be/arm/arm_emitter.h \
497 be/arm/arm_new_nodes.h \
498 be/arm/arm_nodes_attr.h \
499 be/arm/arm_optimize.h \
501 be/arm/arm_transform.h \
502 be/arm/arm_map_regs.h \
504 be/arm/bearch_arm_t.h
506 $(srcdir)/be/arm/gen_arm_new_nodes.c.inl $(srcdir)/be/arm/gen_arm_new_nodes.h: \
507 be/arm/arm_spec.pl be/scripts/generate_new_opcodes.pl
508 $(PERL) $(srcdir)/be/scripts/generate_new_opcodes.pl $(srcdir)/be/arm/arm_spec.pl $(srcdir)/be/arm
510 $(srcdir)/be/arm/gen_arm_emitter.c $(srcdir)/be/arm/gen_arm_emitter.h: \
511 be/arm/arm_spec.pl be/scripts/generate_emitter.pl
512 $(PERL) $(srcdir)/be/scripts/generate_emitter.pl $(srcdir)/be/arm/arm_spec.pl $(srcdir)/be/arm
514 $(srcdir)/be/arm/gen_arm_machine.c $(srcdir)/be/arm/gen_arm_machine.h: \
515 be/arm/arm_spec.pl be/scripts/generate_machine.pl
516 $(PERL) $(srcdir)/be/scripts/generate_machine.pl $(srcdir)/be/arm/arm_spec.pl $(srcdir)/be/arm
518 $(srcdir)/be/arm/gen_arm_regalloc_if.c $(srcdir)/be/arm/gen_arm_regalloc_if.h: \
519 be/arm/arm_spec.pl be/scripts/generate_machine.pl
520 $(PERL) $(srcdir)/be/scripts/generate_regalloc_if.pl $(srcdir)/be/arm/arm_spec.pl $(srcdir)/be/arm
525 be/sparc/sparc_emitter.c \
526 be/sparc/sparc_new_nodes.c \
527 be/sparc/sparc_transform.c \
528 be/sparc/sparc_cconv.c \
529 be/sparc/sparc_finish.c \
530 be/sparc/bearch_sparc.c
531 sparc_built_sources = \
532 be/sparc/gen_sparc_emitter.c \
533 be/sparc/gen_sparc_emitter.h \
534 be/sparc/gen_sparc_machine.c \
535 be/sparc/gen_sparc_machine.h \
536 be/sparc/gen_sparc_new_nodes.c.inl \
537 be/sparc/gen_sparc_new_nodes.h \
538 be/sparc/gen_sparc_regalloc_if.c \
539 be/sparc/gen_sparc_regalloc_if.h
540 MAINTAINERCLEANFILES += $(sparc_built_sources)
541 BUILT_SOURCES += $(sparc_built_sources)
542 libfirm_la_SOURCES += $(sparc_sources) $(sparc_built_sources)
545 be/sparc/sparc_emitter.h \
546 be/sparc/sparc_new_nodes.h \
547 be/sparc/sparc_nodes_attr.h \
548 be/sparc/sparc_spec.pl \
549 be/sparc/sparc_cconv.h \
550 be/sparc/sparc_transform.h \
551 be/sparc/bearch_sparc_t.h
553 $(srcdir)/be/sparc/gen_sparc_new_nodes.c.inl $(srcdir)/be/sparc/gen_sparc_new_nodes.h: \
554 be/sparc/sparc_spec.pl be/scripts/generate_new_opcodes.pl
555 $(PERL) $(srcdir)/be/scripts/generate_new_opcodes.pl $(srcdir)/be/sparc/sparc_spec.pl $(srcdir)/be/sparc
557 $(srcdir)/be/sparc/gen_sparc_emitter.c $(srcdir)/be/sparc/gen_sparc_emitter.h: \
558 be/sparc/sparc_spec.pl be/scripts/generate_emitter.pl
559 $(PERL) $(srcdir)/be/scripts/generate_emitter.pl $(srcdir)/be/sparc/sparc_spec.pl $(srcdir)/be/sparc
561 $(srcdir)/be/sparc/gen_sparc_machine.c $(srcdir)/be/sparc/gen_sparc_machine.h: \
562 be/sparc/sparc_spec.pl be/scripts/generate_machine.pl
563 $(PERL) $(srcdir)/be/scripts/generate_machine.pl $(srcdir)/be/sparc/sparc_spec.pl $(srcdir)/be/sparc
565 $(srcdir)/be/sparc/gen_sparc_regalloc_if.c $(srcdir)/be/sparc/gen_sparc_regalloc_if.h: \
566 be/sparc/sparc_spec.pl be/scripts/generate_machine.pl
567 $(PERL) $(srcdir)/be/scripts/generate_regalloc_if.pl $(srcdir)/be/sparc/sparc_spec.pl $(srcdir)/be/sparc
572 be/amd64/amd64_emitter.c \
573 be/amd64/amd64_new_nodes.c \
574 be/amd64/amd64_transform.c \
575 be/amd64/bearch_amd64.c
576 amd64_built_sources = \
577 be/amd64/gen_amd64_emitter.c \
578 be/amd64/gen_amd64_emitter.h \
579 be/amd64/gen_amd64_machine.c \
580 be/amd64/gen_amd64_machine.h \
581 be/amd64/gen_amd64_new_nodes.c.inl \
582 be/amd64/gen_amd64_new_nodes.h \
583 be/amd64/gen_amd64_regalloc_if.c \
584 be/amd64/gen_amd64_regalloc_if.h
585 MAINTAINERCLEANFILES += $(amd64_built_sources)
586 BUILT_SOURCES += $(amd64_built_sources)
587 libfirm_la_SOURCES += $(amd64_sources) $(amd64_built_sources)
590 be/amd64/amd64_emitter.h \
591 be/amd64/amd64_new_nodes.h \
592 be/amd64/amd64_nodes_attr.h \
593 be/amd64/amd64_spec.pl \
594 be/amd64/amd64_transform.h \
595 be/amd64/bearch_amd64_t.h
597 $(srcdir)/be/amd64/gen_amd64_new_nodes.c.inl $(srcdir)/be/amd64/gen_amd64_new_nodes.h: \
598 be/amd64/amd64_spec.pl be/scripts/generate_new_opcodes.pl
599 $(PERL) $(srcdir)/be/scripts/generate_new_opcodes.pl $(srcdir)/be/amd64/amd64_spec.pl $(srcdir)/be/amd64
601 $(srcdir)/be/amd64/gen_amd64_emitter.c $(srcdir)/be/amd64/gen_amd64_emitter.h: \
602 be/amd64/amd64_spec.pl be/scripts/generate_emitter.pl
603 $(PERL) $(srcdir)/be/scripts/generate_emitter.pl $(srcdir)/be/amd64/amd64_spec.pl $(srcdir)/be/amd64
605 $(srcdir)/be/amd64/gen_amd64_machine.c $(srcdir)/be/amd64/gen_amd64_machine.h: \
606 be/amd64/amd64_spec.pl be/scripts/generate_machine.pl
607 $(PERL) $(srcdir)/be/scripts/generate_machine.pl $(srcdir)/be/amd64/amd64_spec.pl $(srcdir)/be/amd64
609 $(srcdir)/be/amd64/gen_amd64_regalloc_if.c $(srcdir)/be/amd64/gen_amd64_regalloc_if.h: \
610 be/amd64/amd64_spec.pl be/scripts/generate_machine.pl
611 $(PERL) $(srcdir)/be/scripts/generate_regalloc_if.pl $(srcdir)/be/amd64/amd64_spec.pl $(srcdir)/be/amd64
617 be/TEMPLATE/TEMPLATE_emitter.c \
618 be/TEMPLATE/TEMPLATE_new_nodes.c \
619 be/TEMPLATE/TEMPLATE_transform.c \
620 be/TEMPLATE/bearch_TEMPLATE.c
621 TEMPLATE_built_sources = \
622 be/TEMPLATE/gen_TEMPLATE_emitter.c \
623 be/TEMPLATE/gen_TEMPLATE_emitter.h \
624 be/TEMPLATE/gen_TEMPLATE_machine.c \
625 be/TEMPLATE/gen_TEMPLATE_machine.h \
626 be/TEMPLATE/gen_TEMPLATE_new_nodes.c.inl \
627 be/TEMPLATE/gen_TEMPLATE_new_nodes.h \
628 be/TEMPLATE/gen_TEMPLATE_regalloc_if.c \
629 be/TEMPLATE/gen_TEMPLATE_regalloc_if.h
630 MAINTAINERCLEANFILES += $(TEMPLATE_built_sources)
631 BUILT_SOURCES += $(TEMPLATE_built_sources)
632 libfirm_la_SOURCES += $(TEMPLATE_sources) $(TEMPLATE_built_sources)
635 be/TEMPLATE/TEMPLATE_emitter.h \
636 be/TEMPLATE/TEMPLATE_new_nodes.h \
637 be/TEMPLATE/TEMPLATE_nodes_attr.h \
638 be/TEMPLATE/TEMPLATE_spec.pl \
639 be/TEMPLATE/TEMPLATE_transform.h \
640 be/TEMPLATE/bearch_TEMPLATE_t.h
642 $(srcdir)/be/TEMPLATE/gen_TEMPLATE_new_nodes.c.inl $(srcdir)/be/TEMPLATE/gen_TEMPLATE_new_nodes.h: \
643 be/TEMPLATE/TEMPLATE_spec.pl be/scripts/generate_new_opcodes.pl
644 $(PERL) $(srcdir)/be/scripts/generate_new_opcodes.pl $(srcdir)/be/TEMPLATE/TEMPLATE_spec.pl $(srcdir)/be/TEMPLATE
646 $(srcdir)/be/TEMPLATE/gen_TEMPLATE_emitter.c $(srcdir)/be/TEMPLATE/gen_TEMPLATE_emitter.h: \
647 be/TEMPLATE/TEMPLATE_spec.pl be/scripts/generate_emitter.pl
648 $(PERL) $(srcdir)/be/scripts/generate_emitter.pl $(srcdir)/be/TEMPLATE/TEMPLATE_spec.pl $(srcdir)/be/TEMPLATE
650 $(srcdir)/be/TEMPLATE/gen_TEMPLATE_machine.c $(srcdir)/be/TEMPLATE/gen_TEMPLATE_machine.h: \
651 be/TEMPLATE/TEMPLATE_spec.pl be/scripts/generate_machine.pl
652 $(PERL) $(srcdir)/be/scripts/generate_machine.pl $(srcdir)/be/TEMPLATE/TEMPLATE_spec.pl $(srcdir)/be/TEMPLATE
654 $(srcdir)/be/TEMPLATE/gen_TEMPLATE_regalloc_if.c $(srcdir)/be/TEMPLATE/gen_TEMPLATE_regalloc_if.h: \
655 be/TEMPLATE/TEMPLATE_spec.pl be/scripts/generate_machine.pl
656 $(PERL) $(srcdir)/be/scripts/generate_regalloc_if.pl $(srcdir)/be/TEMPLATE/TEMPLATE_spec.pl $(srcdir)/be/TEMPLATE