fix warning
[libfirm] / ir / Makefile.am
1 lib_LTLIBRARIES = libfirm.la
2
3 INCLUDES = $(LIBCORE_CFLAGS) \
4         -I$(top_srcdir)/include/libfirm \
5         -I$(top_srcdir)/include/libfirm/adt \
6         -I$(top_builddir)
7
8 INCLUDES += \
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 \
23         -I$(top_srcdir)/ir/tv
24
25 libfirm_la_LDFLAGS = -no-undefined
26 libfirm_la_SOURCES = \
27         adt/array.c \
28         adt/bipartite.c \
29         adt/cpset.c \
30         adt/eset.c \
31         adt/gaussjordan.c \
32         adt/gaussseidel.c \
33         adt/hashset.c \
34         adt/hungarian.c \
35         adt/iterator.c \
36         adt/pdeq.c \
37         adt/plist.c \
38         adt/pmap.c \
39         adt/pqueue.c \
40         adt/pset.c \
41         adt/pset_new.c \
42         adt/set.c \
43         adt/xmalloc.c \
44         ana/absgraph.c \
45         ana/analyze_irg_args.c \
46         ana/callgraph.c \
47         ana/cdep.c \
48         ana/cgana.c \
49         ana/dfs.c \
50         ana/execfreq.c \
51         ana/execution_frequency.c \
52         ana/field_temperature.c \
53         ana/height.c \
54         ana/interval_analysis.c \
55         ana/irbackedge.c \
56         ana/ircfscc.c \
57         ana/irconsconfirm.c \
58         ana/irdom.c \
59         ana/irextbb2.c \
60         ana/irextbb.c \
61         ana/irlivechk.c \
62         ana/irloop.c \
63         ana/irmemory.c \
64         ana/irouts.c \
65         ana/irscc.c \
66         ana/irsimpletype.c \
67         ana/irtypeinfo.c \
68         ana/rta.c \
69         ana/structure.c \
70         ana/trouts.c \
71         ana/vrp.c \
72         be/beabi.c \
73         be/bearch.c \
74         be/beblocksched.c \
75         be/bechordal.c \
76         be/bechordal_common.c \
77         be/bechordal_draw.c \
78         be/bechordal_main.c \
79         be/becopyheur2.c \
80         be/becopyheur4.c \
81         be/becopyheur.c \
82         be/becopyilp1.c \
83         be/becopyilp2.c \
84         be/becopyilp.c \
85         be/becopyopt.c \
86         be/becopypbqp.c \
87         be/becopystat.c \
88         be/bedbgout.c \
89         be/bedomfront.c \
90         be/bedump_minir.c \
91         be/beemitter_binary.c \
92         be/beemitter.c \
93         be/beflags.c \
94         be/begnuas.c \
95         be/beifg.c \
96         be/beifg_clique.c \
97         be/beifg_list.c \
98         be/beifg_pointer.c \
99         be/beifg_std.c \
100         be/beilpsched.c \
101         be/beinfo.c \
102         be/beinsn.c \
103         be/beirg.c \
104         be/beirgmod.c \
105         be/belistsched.c \
106         be/belive.c \
107         be/beloopana.c \
108         be/belower.c \
109         be/bemachine.c \
110         be/bemain.c \
111         be/bemodule.c \
112         be/benode.c \
113         be/bepbqpcoloring.c \
114         be/bepeephole.c \
115         be/beprefalloc.c \
116         be/bepressurestat.c \
117         be/bera.c \
118         be/besched.c \
119         be/beschedmris.c \
120         be/beschednormal.c \
121         be/beschedrand.c \
122         be/beschedregpress.c \
123         be/beschedrss.c \
124         be/beschedtrace.c \
125         be/beschedtrivial.c \
126         be/bespillbelady2.c \
127         be/bespillbelady3.c \
128         be/bespillbelady.c \
129         be/bespill.c \
130         be/bespilldaemel.c \
131         be/bespillslots.c \
132         be/bespillutil.c \
133         be/bessaconstr.c \
134         be/bessadestr.c \
135         be/bestabs.c \
136         be/bestat.c \
137         be/bestate.c \
138         be/betranshlp.c \
139         be/beuses.c \
140         be/beutil.c \
141         be/beverify.c \
142         common/debug.c \
143         common/error.c \
144         common/firm.c \
145         common/firm_common.c \
146         common/irtools.c \
147         common/timing.c \
148         debug/dbginfo.c \
149         debug/debugger.c \
150         debug/seqnumbers.c \
151         ident/ident.c \
152         ident/mangle.c \
153         ir/instrument.c \
154         ir/irarch.c \
155         ir/irargs.c \
156         ir/ircgcons.c \
157         ir/ircons.c \
158         ir/irdump.c \
159         ir/irdumptxt.c \
160         ir/iredges.c \
161         ir/irflag.c \
162         ir/irgmod.c \
163         ir/irgopt.c \
164         ir/irgraph.c \
165         ir/irgwalk_blk.c \
166         ir/irgwalk.c \
167         ir/irhooks.c \
168         ir/irio.c \
169         ir/irlinkednodemap.c \
170         ir/irlinkednodeset.c \
171         ir/irmode.c \
172         ir/irnode.c \
173         ir/irnodemap.c \
174         ir/irnodeset.c \
175         ir/irop.c \
176         ir/iropt.c \
177         ir/irpass.c \
178         ir/irphase.c \
179         ir/irprintf.c \
180         ir/irprofile.c \
181         ir/irprog.c \
182         ir/irssacons.c \
183         ir/irvrfy.c \
184         ir/pseudo_irg.c \
185         ir/valueset.c \
186         libcore/lc_appendable.c \
187         libcore/lc_config_lexer.c \
188         libcore/lc_config_parser.c \
189         libcore/lc_opts.c \
190         libcore/lc_opts_enum.c \
191         libcore/lc_printf.c \
192         lower/lower_calls.c \
193         lower/lower_copyb.c \
194         lower/lower_dw.c \
195         lower/lower_hl.c \
196         lower/lower_intrinsics.c \
197         lower/lower_mode_b.c \
198         lower/lower_mux.c \
199         lower/lower_switch.c \
200         obstack/obstack.c \
201         obstack/obstack_printf.c \
202         opt/boolopt.c \
203         opt/cfopt.c \
204         opt/code_placement.c \
205         opt/combo.c \
206         opt/convopt.c \
207         opt/critical_edges.c \
208         opt/dead_code_elimination.c \
209         opt/escape_ana.c \
210         opt/fp-vrp.c \
211         opt/funccall.c \
212         opt/garbage_collect.c \
213         opt/gvn_pre.c \
214         opt/ifconv.c \
215         opt/ircgopt.c \
216         opt/jumpthreading.c \
217         opt/ldstopt.c \
218         opt/loop.c \
219         opt/opt_blocks.c \
220         opt/opt_confirms.c \
221         opt/opt_frame.c \
222         opt/opt_inline.c \
223         opt/opt_ldst.c \
224         opt/opt_osr.c \
225         opt/opt_polymorphy.c \
226         opt/parallelize_mem.c \
227         opt/proc_cloning.c \
228         opt/reassoc.c \
229         opt/return.c \
230         opt/scalar_replace.c \
231         opt/tailrec.c \
232         opt/tropt.c \
233         stat/const_stat.c \
234         stat/dags.c \
235         stat/distrib.c \
236         stat/firmstat.c \
237         stat/pattern.c \
238         stat/pattern_dmp.c \
239         stat/stat_dmp.c \
240         stat/statev.c \
241         stat/stat_liveness.c \
242         stat/stat_timing.c \
243         tr/compound_path.c \
244         tr/entity.c \
245         tr/tpop.c \
246         tr/tr_inheritance.c \
247         tr/trvrfy.c \
248         tr/type.c \
249         tr/type_finalization.c \
250         tr/typewalk.c \
251         tv/fltcalc.c \
252         tv/strcalc.c \
253         tv/tv.c
254
255 EXTRA_DIST = \
256         adt/bitset.h \
257         adt/array_t.h \
258         adt/raw_bitset.h \
259         adt/compiler.h \
260         adt/bitfiddle.h \
261         ana/irdom_t.h \
262         ana/dfs_t.h \
263         ana/irbackedge_t.h \
264         ana/dfs.h \
265         ana/irlivechk.h \
266         ana/irmemory_t.h \
267         ana/absgraph.h \
268         ana/irloop_t.h \
269         ana/irextbb_t.h \
270         be/belive_t.h \
271         be/bechordal_common.h \
272         be/beifg_impl.h \
273         be/becopypbqp.h \
274         be/bepeephole.h \
275         be/be_dbgout_t.h \
276         be/bessaconstr.h \
277         be/beifg_t.h \
278         be/beblocksched.h \
279         be/becopyilp_t.h \
280         be/beverify.h \
281         be/bemachine.h \
282         be/beemitter.h \
283         be/begnuas.h \
284         be/becopyopt_t.h \
285         be/benode.h \
286         be/bemodule.h \
287         be/be_t.h \
288         be/be_types.h \
289         be/belistsched.h \
290         be/bessadestr.h \
291         be/bechordal_draw.h \
292         be/beabi.h \
293         be/beflags.h \
294         be/bechordal_t.h \
295         be/beifg.h \
296         be/bespillslots.h \
297         be/beschedmris.h \
298         be/besched.h \
299         be/beloopana.h \
300         be/beilpsched.h \
301         be/becopyopt.h \
302         be/bepressurestat.h \
303         be/bestat.h \
304         be/beuses.h \
305         be/bestate.h \
306         be/bespillutil.h \
307         be/bera.h \
308         be/beemitter_binary.h \
309         be/beirgmod.h \
310         be/beinsn_t.h \
311         be/betranshlp.h \
312         be/belive.h \
313         be/bestatevent.h \
314         be/beutil.h \
315         be/be_dbgout.h \
316         be/bespill.h \
317         be/bedomfront.h \
318         be/belower.h \
319         be/beinfo.h \
320         be/beintlive_t.h \
321         be/bepbqpcoloring.h \
322         be/becopystat.h \
323         be/bemodule_t.h \
324         be/bechordal.h \
325         be/bedump_minir.h \
326         be/bearch.h \
327         be/beschedrss.h \
328         be/beirg.h \
329         common/error.h \
330         common/irtools.h \
331         common/debug.h \
332         debug/dbginfo_t.h \
333         debug/debugger.h \
334         ident/ident_t.h \
335         ir/gen_irnode.h \
336         ir/irmode_t.h \
337         ir/irvrfy_t.h \
338         ir/iredges_t.h \
339         ir/ircons_t.h \
340         ir/irpass_t.h \
341         ir/irprofile.h \
342         ir/irflag_t.def \
343         ir/irargs_t.h \
344         ir/irnodemap.h \
345         ir/irgraph_t.h \
346         ir/irbitset.h \
347         ir/irflag_t.h \
348         ir/valueset.h \
349         ir/irnodeset.h \
350         ir/irop_t.h \
351         ir/irphase_t.h \
352         ir/instrument.h \
353         ir/iredgeset.h \
354         ir/irdump_t.h \
355         ir/irprog_t.h \
356         ir/irtypes.h \
357         ir/irnode_t.h \
358         ir/irlinkednodemap.h \
359         ir/iropt_t.h \
360         ir/irprintf_t.h \
361         ir/irlinkednodeset.h \
362         ir/irphase.h \
363         libcore/lc_common_t.h \
364         libcore/lc_defines.h \
365         libcore/lc_parser_t.h \
366         libcore/do_bisonflex.sh \
367         libcore/lc_config_parser.h \
368         libcore/lc_opts.h \
369         libcore/lc_printf_arg_types.def \
370         libcore/lc_appendable.h \
371         libcore/lc_printf.h \
372         libcore/lc_config.h \
373         libcore/lc_opts_t.h \
374         libcore/lc_opts_enum.h \
375         opt/scalar_replace.h \
376         opt/reassoc_t.h \
377         opt/opt_init.h \
378         opt/opt_confirms.h \
379         opt/opt_polymorphy.h \
380         opt/iropt_dbg.h \
381         stat/statev.h \
382         stat/stat_dmp.h \
383         stat/firmstat_t.h \
384         stat/pattern.h \
385         stat/pattern_dmp.h \
386         stat/dags.h \
387         stat/counter.h \
388         stat/stat_timing.h \
389         tr/entity_t.h \
390         tr/compound_path_t.h \
391         tr/type_t.h \
392         tr/tpop_t.h \
393         tv/strcalc.h \
394         tv/tv_t.h \
395         tv/fltcalc.h \
396         ir/gen_irop.c.inl \
397         ir/gen_ir_cons.c.inl \
398         ir/gen_irnode.c.inl \
399         ir/gen_irio_export.inl \
400         ir/gen_irio_import.inl \
401         ir/gen_irio_lex.inl \
402         be/scripts/generate_emitter_new.pl \
403         be/scripts/generate_emitter.pl \
404         be/scripts/generate_machine.pl \
405         be/scripts/generate_new_opcodes.pl \
406         be/scripts/generate_regalloc_if.pl
407
408 EXTRA_DIST += \
409         libcore/do_bisonflex.sh \
410         libcore/lc_config_lexer.l \
411         libcore/lc_config_parser.y
412
413 # ia32 backend
414
415 ia32_sources = \
416         be/ia32/bearch_ia32.c \
417         be/ia32/ia32_address_mode.c \
418         be/ia32/ia32_architecture.c \
419         be/ia32/ia32_common_transform.c \
420         be/ia32/ia32_emitter.c \
421         be/ia32/ia32_finish.c \
422         be/ia32/ia32_fpu.c \
423         be/ia32/ia32_intrinsics.c \
424         be/ia32/ia32_map_regs.c \
425         be/ia32/ia32_new_nodes.c \
426         be/ia32/ia32_optimize.c \
427         be/ia32/ia32_transform.c \
428         be/ia32/ia32_util.c \
429         be/ia32/ia32_x87.c
430
431 ia32_built_sources = \
432         be/ia32/gen_ia32_emitter.c \
433         be/ia32/gen_ia32_emitter.h \
434         be/ia32/gen_ia32_machine.c \
435         be/ia32/gen_ia32_machine.h \
436         be/ia32/gen_ia32_new_nodes.c.inl \
437         be/ia32/gen_ia32_new_nodes.h \
438         be/ia32/gen_ia32_regalloc_if.c \
439         be/ia32/gen_ia32_regalloc_if.h
440 MAINTAINERCLEANFILES = $(ia32_built_sources)
441 BUILT_SOURCES        = $(ia32_built_sources)
442 libfirm_la_SOURCES  += $(ia32_sources) $(ia32_built_sources)
443
444 EXTRA_DIST += \
445         be/ia32/bearch_ia32_t.h \
446         be/ia32/ia32_address_mode.h \
447         be/ia32/ia32_architecture.h \
448         be/ia32/ia32_common_transform.h \
449         be/ia32/ia32_dbg_stat.h \
450         be/ia32/ia32_emitter.h \
451         be/ia32/ia32_finish.h \
452         be/ia32/ia32_fpu.h \
453         be/ia32/ia32_map_regs.h \
454         be/ia32/ia32_new_nodes.h \
455         be/ia32/ia32_nodes_attr.h \
456         be/ia32/ia32_optimize.h \
457         be/ia32/ia32_spec.pl \
458         be/ia32/ia32_transform.h \
459         be/ia32/ia32_util.h \
460         be/ia32/ia32_x87.h
461
462 $(srcdir)/be/ia32/gen_ia32_new_nodes.c.inl $(srcdir)/be/ia32/gen_ia32_new_nodes.h: \
463                 be/ia32/ia32_spec.pl be/scripts/generate_new_opcodes.pl
464         $(PERL) $(srcdir)/be/scripts/generate_new_opcodes.pl $(srcdir)/be/ia32/ia32_spec.pl $(srcdir)/be/ia32
465
466 $(srcdir)/be/ia32/gen_ia32_emitter.c $(srcdir)/be/ia32/gen_ia32_emitter.h: \
467                 be/ia32/ia32_spec.pl be/scripts/generate_emitter.pl
468         $(PERL) $(srcdir)/be/scripts/generate_emitter.pl $(srcdir)/be/ia32/ia32_spec.pl $(srcdir)/be/ia32
469
470 $(srcdir)/be/ia32/gen_ia32_machine.c $(srcdir)/be/ia32/gen_ia32_machine.h: \
471                 be/ia32/ia32_spec.pl be/scripts/generate_machine.pl
472         $(PERL) $(srcdir)/be/scripts/generate_machine.pl $(srcdir)/be/ia32/ia32_spec.pl $(srcdir)/be/ia32
473
474 $(srcdir)/be/ia32/gen_ia32_regalloc_if.c $(srcdir)/be/ia32/gen_ia32_regalloc_if.h: \
475                 be/ia32/ia32_spec.pl be/scripts/generate_regalloc_if.pl
476         $(PERL) $(srcdir)/be/scripts/generate_regalloc_if.pl $(srcdir)/be/ia32/ia32_spec.pl $(srcdir)/be/ia32
477
478 # arm backend
479
480 arm_sources = \
481         be/arm/arm_emitter.c \
482         be/arm/arm_map_regs.c \
483         be/arm/arm_new_nodes.c \
484         be/arm/arm_optimize.c \
485         be/arm/arm_transform.c \
486         be/arm/bearch_arm.c
487 arm_built_sources = \
488         be/arm/gen_arm_emitter.c \
489         be/arm/gen_arm_emitter.h \
490         be/arm/gen_arm_machine.c \
491         be/arm/gen_arm_machine.h \
492         be/arm/gen_arm_new_nodes.c.inl \
493         be/arm/gen_arm_new_nodes.h \
494         be/arm/gen_arm_regalloc_if.c \
495         be/arm/gen_arm_regalloc_if.h
496 MAINTAINERCLEANFILES += $(arm_built_sources)
497 BUILT_SOURCES += $(arm_built_sources)
498 libfirm_la_SOURCES += $(arm_sources) $(arm_built_sources)
499
500
501 EXTRA_DIST += \
502         be/arm/arm_emitter.h \
503         be/arm/arm_map_regs.h \
504         be/arm/arm_new_nodes.h \
505         be/arm/arm_nodes_attr.h \
506         be/arm/arm_optimize.h \
507         be/arm/arm_spec.pl \
508         be/arm/arm_transform.h \
509         be/arm/bearch_arm.h \
510         be/arm/bearch_arm_t.h
511
512 $(srcdir)/be/arm/gen_arm_new_nodes.c.inl $(srcdir)/be/arm/gen_arm_new_nodes.h: \
513                 be/arm/arm_spec.pl be/scripts/generate_new_opcodes.pl
514         $(PERL) $(srcdir)/be/scripts/generate_new_opcodes.pl $(srcdir)/be/arm/arm_spec.pl $(srcdir)/be/arm
515
516 $(srcdir)/be/arm/gen_arm_emitter.c $(srcdir)/be/arm/gen_arm_emitter.h: \
517                 be/arm/arm_spec.pl be/scripts/generate_emitter.pl
518         $(PERL) $(srcdir)/be/scripts/generate_emitter.pl $(srcdir)/be/arm/arm_spec.pl $(srcdir)/be/arm
519
520 $(srcdir)/be/arm/gen_arm_machine.c $(srcdir)/be/arm/gen_arm_machine.h: \
521                 be/arm/arm_spec.pl be/scripts/generate_machine.pl
522         $(PERL) $(srcdir)/be/scripts/generate_machine.pl $(srcdir)/be/arm/arm_spec.pl $(srcdir)/be/arm
523
524 $(srcdir)/be/arm/gen_arm_regalloc_if.c $(srcdir)/be/arm/gen_arm_regalloc_if.h: \
525                 be/arm/arm_spec.pl be/scripts/generate_machine.pl
526         $(PERL) $(srcdir)/be/scripts/generate_regalloc_if.pl $(srcdir)/be/arm/arm_spec.pl $(srcdir)/be/arm
527
528 # mips backend
529
530 mips_sources = \
531         be/mips/bearch_mips.c \
532         be/mips/mips_emitter.c \
533         be/mips/mips_map_regs.c \
534         be/mips/mips_new_nodes.c \
535         be/mips/mips_scheduler.c \
536         be/mips/mips_transform.c
537 mips_built_sources = \
538         be/mips/gen_mips_emitter.c \
539         be/mips/gen_mips_emitter.h \
540         be/mips/gen_mips_machine.c \
541         be/mips/gen_mips_machine.h \
542         be/mips/gen_mips_new_nodes.c.inl \
543         be/mips/gen_mips_new_nodes.h \
544         be/mips/gen_mips_regalloc_if.c \
545         be/mips/gen_mips_regalloc_if.h
546 MAINTAINERCLEANFILES += $(mips_built_sources)
547 BUILT_SOURCES += $(mips_built_sources)
548 libfirm_la_SOURCES += $(mips_sources) $(mips_built_sources)
549
550 EXTRA_DIST += \
551         be/mips/bearch_mips.h \
552         be/mips/bearch_mips_t.h \
553         be/mips/mips_emitter.h \
554         be/mips/mips_map_regs.h \
555         be/mips/mips_new_nodes.h \
556         be/mips/mips_nodes_attr.h \
557         be/mips/mips_scheduler.h \
558         be/mips/mips_spec.pl \
559         be/mips/mips_transform.h \
560         be/mips/mips_util.h
561
562 $(srcdir)/be/mips/gen_mips_new_nodes.c.inl $(srcdir)/be/mips/gen_mips_new_nodes.h: \
563                 be/mips/mips_spec.pl be/scripts/generate_new_opcodes.pl
564         $(PERL) $(srcdir)/be/scripts/generate_new_opcodes.pl $(srcdir)/be/mips/mips_spec.pl $(srcdir)/be/mips
565
566 $(srcdir)/be/mips/gen_mips_emitter.c $(srcdir)/be/mips/gen_mips_emitter.h: \
567                 be/mips/mips_spec.pl be/scripts/generate_emitter.pl
568         $(PERL) $(srcdir)/be/scripts/generate_emitter.pl $(srcdir)/be/mips/mips_spec.pl $(srcdir)/be/mips
569
570 $(srcdir)/be/mips/gen_mips_machine.c $(srcdir)/be/mips/gen_mips_machine.h: \
571                 be/mips/mips_spec.pl be/scripts/generate_machine.pl
572         $(PERL) $(srcdir)/be/scripts/generate_machine.pl $(srcdir)/be/mips/mips_spec.pl $(srcdir)/be/mips
573
574 $(srcdir)/be/mips/gen_mips_regalloc_if.c $(srcdir)/be/mips/gen_mips_regalloc_if.h: \
575                 be/mips/mips_spec.pl be/scripts/generate_machine.pl
576         $(PERL) $(srcdir)/be/scripts/generate_regalloc_if.pl $(srcdir)/be/mips/mips_spec.pl $(srcdir)/be/mips
577
578 # ppc32 backend
579
580 ppc32_sources = \
581         be/ppc32/bearch_ppc32.c \
582         be/ppc32/ppc32_emitter.c \
583         be/ppc32/ppc32_map_regs.c \
584         be/ppc32/ppc32_new_nodes.c \
585         be/ppc32/ppc32_transform.c \
586         be/ppc32/ppc32_transform_conv.c
587 ppc32_built_sources = \
588         be/ppc32/gen_ppc32_emitter.c \
589         be/ppc32/gen_ppc32_emitter.h \
590         be/ppc32/gen_ppc32_machine.c \
591         be/ppc32/gen_ppc32_machine.h \
592         be/ppc32/gen_ppc32_new_nodes.c.inl \
593         be/ppc32/gen_ppc32_new_nodes.h \
594         be/ppc32/gen_ppc32_regalloc_if.c \
595         be/ppc32/gen_ppc32_regalloc_if.h
596 MAINTAINERCLEANFILES += $(ppc32_built_sources)
597 BUILT_SOURCES += $(ppc32_built_sources)
598 libfirm_la_SOURCES += $(ppc32_sources) $(ppc32_built_sources)
599
600 EXTRA_DIST += \
601         be/ppc32/bearch_ppc32.h \
602         be/ppc32/bearch_ppc32_t.h \
603         be/ppc32/ppc32_emitter.h \
604         be/ppc32/ppc32_map_regs.h \
605         be/ppc32/ppc32_new_nodes.h \
606         be/ppc32/ppc32_nodes_attr.h \
607         be/ppc32/ppc32_spec.pl \
608         be/ppc32/ppc32_transform.h \
609         be/ppc32/ppc32_transform_conv.h
610
611 $(srcdir)/be/ppc32/gen_ppc32_new_nodes.c.inl $(srcdir)/be/ppc32/gen_ppc32_new_nodes.h: \
612                 be/ppc32/ppc32_spec.pl be/scripts/generate_new_opcodes.pl
613         $(PERL) $(srcdir)/be/scripts/generate_new_opcodes.pl $(srcdir)/be/ppc32/ppc32_spec.pl $(srcdir)/be/ppc32
614
615 $(srcdir)/be/ppc32/gen_ppc32_emitter.c $(srcdir)/be/ppc32/gen_ppc32_emitter.h: \
616                 be/ppc32/ppc32_spec.pl be/scripts/generate_emitter.pl
617         $(PERL) $(srcdir)/be/scripts/generate_emitter.pl $(srcdir)/be/ppc32/ppc32_spec.pl $(srcdir)/be/ppc32
618
619 $(srcdir)/be/ppc32/gen_ppc32_machine.c $(srcdir)/be/ppc32/gen_ppc32_machine.h: \
620                 be/ppc32/ppc32_spec.pl be/scripts/generate_machine.pl
621         $(PERL) $(srcdir)/be/scripts/generate_machine.pl $(srcdir)/be/ppc32/ppc32_spec.pl $(srcdir)/be/ppc32
622
623 $(srcdir)/be/ppc32/gen_ppc32_regalloc_if.c $(srcdir)/be/ppc32/gen_ppc32_regalloc_if.h: \
624                 be/ppc32/ppc32_spec.pl be/scripts/generate_machine.pl
625         $(PERL) $(srcdir)/be/scripts/generate_regalloc_if.pl $(srcdir)/be/ppc32/ppc32_spec.pl $(srcdir)/be/ppc32
626
627 # sparc backend
628
629 sparc_sources = \
630         be/sparc/sparc_emitter.c \
631         be/sparc/sparc_map_regs.c \
632         be/sparc/sparc_new_nodes.c \
633         be/sparc/sparc_transform.c \
634         be/sparc/bearch_sparc.c
635 sparc_built_sources = \
636         be/sparc/gen_sparc_emitter.c \
637         be/sparc/gen_sparc_emitter.h \
638         be/sparc/gen_sparc_machine.c \
639         be/sparc/gen_sparc_machine.h \
640         be/sparc/gen_sparc_new_nodes.c.inl \
641         be/sparc/gen_sparc_new_nodes.h \
642         be/sparc/gen_sparc_regalloc_if.c \
643         be/sparc/gen_sparc_regalloc_if.h
644 MAINTAINERCLEANFILES += $(sparc_built_sources)
645 BUILT_SOURCES += $(sparc_built_sources)
646 libfirm_la_SOURCES += $(sparc_sources) $(sparc_built_sources)
647
648 EXTRA_DIST += \
649         be/sparc/sparc_emitter.h \
650         be/sparc/sparc_map_regs.h \
651         be/sparc/sparc_new_nodes.h \
652         be/sparc/sparc_nodes_attr.h \
653         be/sparc/sparc_spec.pl \
654         be/sparc/sparc_transform.h \
655         be/sparc/bearch_sparc.h \
656         be/sparc/bearch_sparc_t.h
657
658 $(srcdir)/be/sparc/gen_sparc_new_nodes.c.inl $(srcdir)/be/sparc/gen_sparc_new_nodes.h: \
659                 be/sparc/sparc_spec.pl be/scripts/generate_new_opcodes.pl
660         $(PERL) $(srcdir)/be/scripts/generate_new_opcodes.pl $(srcdir)/be/sparc/sparc_spec.pl $(srcdir)/be/sparc
661
662 $(srcdir)/be/sparc/gen_sparc_emitter.c $(srcdir)/be/sparc/gen_sparc_emitter.h: \
663                 be/sparc/sparc_spec.pl be/scripts/generate_emitter.pl
664         $(PERL) $(srcdir)/be/scripts/generate_emitter.pl $(srcdir)/be/sparc/sparc_spec.pl $(srcdir)/be/sparc
665
666 $(srcdir)/be/sparc/gen_sparc_machine.c $(srcdir)/be/sparc/gen_sparc_machine.h: \
667                 be/sparc/sparc_spec.pl be/scripts/generate_machine.pl
668         $(PERL) $(srcdir)/be/scripts/generate_machine.pl $(srcdir)/be/sparc/sparc_spec.pl $(srcdir)/be/sparc
669
670 $(srcdir)/be/sparc/gen_sparc_regalloc_if.c $(srcdir)/be/sparc/gen_sparc_regalloc_if.h: \
671                 be/sparc/sparc_spec.pl be/scripts/generate_machine.pl
672         $(PERL) $(srcdir)/be/scripts/generate_regalloc_if.pl $(srcdir)/be/sparc/sparc_spec.pl $(srcdir)/be/sparc
673
674 # amd64 backend
675
676 amd64_sources = \
677         be/amd64/amd64_emitter.c \
678         be/amd64/amd64_new_nodes.c \
679         be/amd64/amd64_transform.c \
680         be/amd64/bearch_amd64.c
681 amd64_built_sources = \
682         be/amd64/gen_amd64_emitter.c \
683         be/amd64/gen_amd64_emitter.h \
684         be/amd64/gen_amd64_machine.c \
685         be/amd64/gen_amd64_machine.h \
686         be/amd64/gen_amd64_new_nodes.c.inl \
687         be/amd64/gen_amd64_new_nodes.h \
688         be/amd64/gen_amd64_regalloc_if.c \
689         be/amd64/gen_amd64_regalloc_if.h
690 MAINTAINERCLEANFILES += $(amd64_built_sources)
691 BUILT_SOURCES += $(amd64_built_sources)
692 libfirm_la_SOURCES += $(amd64_sources) $(amd64_built_sources)
693
694 EXTRA_DIST += \
695         be/amd64/amd64_emitter.h \
696         be/amd64/amd64_new_nodes.h \
697         be/amd64/amd64_nodes_attr.h \
698         be/amd64/amd64_spec.pl \
699         be/amd64/amd64_transform.h \
700         be/amd64/bearch_amd64_t.h
701
702 $(srcdir)/be/amd64/gen_amd64_new_nodes.c.inl $(srcdir)/be/amd64/gen_amd64_new_nodes.h: \
703                 be/amd64/amd64_spec.pl be/scripts/generate_new_opcodes.pl
704         $(PERL) $(srcdir)/be/scripts/generate_new_opcodes.pl $(srcdir)/be/amd64/amd64_spec.pl $(srcdir)/be/amd64
705
706 $(srcdir)/be/amd64/gen_amd64_emitter.c $(srcdir)/be/amd64/gen_amd64_emitter.h: \
707                 be/amd64/amd64_spec.pl be/scripts/generate_emitter.pl
708         $(PERL) $(srcdir)/be/scripts/generate_emitter.pl $(srcdir)/be/amd64/amd64_spec.pl $(srcdir)/be/amd64
709
710 $(srcdir)/be/amd64/gen_amd64_machine.c $(srcdir)/be/amd64/gen_amd64_machine.h: \
711                 be/amd64/amd64_spec.pl be/scripts/generate_machine.pl
712         $(PERL) $(srcdir)/be/scripts/generate_machine.pl $(srcdir)/be/amd64/amd64_spec.pl $(srcdir)/be/amd64
713
714 $(srcdir)/be/amd64/gen_amd64_regalloc_if.c $(srcdir)/be/amd64/gen_amd64_regalloc_if.h: \
715                 be/amd64/amd64_spec.pl be/scripts/generate_machine.pl
716         $(PERL) $(srcdir)/be/scripts/generate_regalloc_if.pl $(srcdir)/be/amd64/amd64_spec.pl $(srcdir)/be/amd64
717
718
719 # TEMPLATE backend
720
721 TEMPLATE_sources = \
722         be/TEMPLATE/TEMPLATE_emitter.c \
723         be/TEMPLATE/TEMPLATE_new_nodes.c \
724         be/TEMPLATE/TEMPLATE_transform.c \
725         be/TEMPLATE/bearch_TEMPLATE.c
726 TEMPLATE_built_sources = \
727         be/TEMPLATE/gen_TEMPLATE_emitter.c \
728         be/TEMPLATE/gen_TEMPLATE_emitter.h \
729         be/TEMPLATE/gen_TEMPLATE_machine.c \
730         be/TEMPLATE/gen_TEMPLATE_machine.h \
731         be/TEMPLATE/gen_TEMPLATE_new_nodes.c.inl \
732         be/TEMPLATE/gen_TEMPLATE_new_nodes.h \
733         be/TEMPLATE/gen_TEMPLATE_regalloc_if.c \
734         be/TEMPLATE/gen_TEMPLATE_regalloc_if.h
735 MAINTAINERCLEANFILES += $(TEMPLATE_built_sources)
736 BUILT_SOURCES += $(TEMPLATE_built_sources)
737 libfirm_la_SOURCES += $(TEMPLATE_sources) $(TEMPLATE_built_sources)
738
739 EXTRA_DIST += \
740         be/TEMPLATE/TEMPLATE_emitter.h \
741         be/TEMPLATE/TEMPLATE_new_nodes.h \
742         be/TEMPLATE/TEMPLATE_nodes_attr.h \
743         be/TEMPLATE/TEMPLATE_spec.pl \
744         be/TEMPLATE/TEMPLATE_transform.h \
745         be/TEMPLATE/bearch_TEMPLATE_t.h
746
747 $(srcdir)/be/TEMPLATE/gen_TEMPLATE_new_nodes.c.inl $(srcdir)/be/TEMPLATE/gen_TEMPLATE_new_nodes.h: \
748                 be/TEMPLATE/TEMPLATE_spec.pl be/scripts/generate_new_opcodes.pl
749         $(PERL) $(srcdir)/be/scripts/generate_new_opcodes.pl $(srcdir)/be/TEMPLATE/TEMPLATE_spec.pl $(srcdir)/be/TEMPLATE
750
751 $(srcdir)/be/TEMPLATE/gen_TEMPLATE_emitter.c $(srcdir)/be/TEMPLATE/gen_TEMPLATE_emitter.h: \
752                 be/TEMPLATE/TEMPLATE_spec.pl be/scripts/generate_emitter.pl
753         $(PERL) $(srcdir)/be/scripts/generate_emitter.pl $(srcdir)/be/TEMPLATE/TEMPLATE_spec.pl $(srcdir)/be/TEMPLATE
754
755 $(srcdir)/be/TEMPLATE/gen_TEMPLATE_machine.c $(srcdir)/be/TEMPLATE/gen_TEMPLATE_machine.h: \
756                 be/TEMPLATE/TEMPLATE_spec.pl be/scripts/generate_machine.pl
757         $(PERL) $(srcdir)/be/scripts/generate_machine.pl $(srcdir)/be/TEMPLATE/TEMPLATE_spec.pl $(srcdir)/be/TEMPLATE
758
759 $(srcdir)/be/TEMPLATE/gen_TEMPLATE_regalloc_if.c $(srcdir)/be/TEMPLATE/gen_TEMPLATE_regalloc_if.h: \
760                 be/TEMPLATE/TEMPLATE_spec.pl be/scripts/generate_machine.pl
761         $(PERL) $(srcdir)/be/scripts/generate_regalloc_if.pl $(srcdir)/be/TEMPLATE/TEMPLATE_spec.pl $(srcdir)/be/TEMPLATE