Makefile.am 15 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
lib_LTLIBRARIES = libfirm.la

INCLUDES = $(LIBCORE_CFLAGS) \
	-I$(top_srcdir)/include/libfirm \
	-I$(top_srcdir)/include/libfirm/adt \
	-I$(top_builddir)

INCLUDES += \
	-I$(top_srcdir)/ir/adt \
	-I$(top_srcdir)/ir/ana \
	-I$(top_srcdir)/ir/arch \
Matthias Braun's avatar
Matthias Braun committed
12
	-I$(top_srcdir)/ir/be \
13
14
15
16
	-I$(top_srcdir)/ir/common \
	-I$(top_srcdir)/ir/debug \
	-I$(top_srcdir)/ir/ident \
	-I$(top_srcdir)/ir/ir \
Matthias Braun's avatar
Matthias Braun committed
17
	-I$(top_srcdir)/ir/libcore \
18
19
20
21
22
23
	-I$(top_srcdir)/ir/lower \
	-I$(top_srcdir)/ir/net \
	-I$(top_srcdir)/ir/opt \
	-I$(top_srcdir)/ir/stat \
	-I$(top_srcdir)/ir/tr \
	-I$(top_srcdir)/ir/tv
Matthias Braun's avatar
Matthias Braun committed
24

25
26
27
28
29
30
libfirm_la_SOURCES = \
	adt/array.c \
	adt/bipartite.c \
	adt/cpset.c \
	adt/eset.c \
	adt/gaussjordan.c \
31
	adt/gaussseidel.c \
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
	adt/hashset.c \
	adt/hungarian.c \
	adt/iterator.c \
	adt/pdeq.c \
	adt/plist.c \
	adt/pmap.c \
	adt/pqueue.c \
	adt/pset.c \
	adt/pset_new.c \
	adt/set.c \
	adt/xmalloc.c \
	ana/absgraph.c \
	ana/analyze_irg_args.c \
	ana/callgraph.c \
	ana/cdep.c \
	ana/cgana.c \
	ana/dfs.c \
	ana/execfreq.c \
	ana/execution_frequency.c \
	ana/field_temperature.c \
	ana/height.c \
	ana/interval_analysis.c \
	ana/irbackedge.c \
	ana/ircfscc.c \
	ana/irconsconfirm.c \
	ana/irdom.c \
	ana/irextbb2.c \
	ana/irextbb.c \
	ana/irlivechk.c \
Matthias Braun's avatar
Matthias Braun committed
61
	ana/irloop.c \
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
	ana/irmemory.c \
	ana/irouts.c \
	ana/irscc.c \
	ana/irsimpletype.c \
	ana/irtypeinfo.c \
	ana/phiclass.c \
	ana/rta.c \
	ana/structure.c \
	ana/trouts.c \
	arch/archop.c \
	be/beabi.c \
	be/bearch.c \
	be/beblocksched.c \
	be/bechordal.c \
	be/bechordal_draw.c \
	be/bechordal_main.c \
	be/becopyheur2.c \
	be/becopyheur3.c \
	be/becopyheur4.c \
	be/becopyheur.c \
	be/becopyilp1.c \
	be/becopyilp2.c \
	be/becopyilp.c \
	be/becopyopt.c \
	be/becopystat.c \
Matthias Braun's avatar
Matthias Braun committed
87
	be/bedbgout.c \
88
89
	be/bedomfront.c \
	be/beemitter.c \
90
	be/beflags.c \
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
	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/beinsn.c \
	be/beirg.c \
	be/beirgmod.c \
	be/bejavacoal.c \
	be/belistsched.c \
	be/belive.c \
	be/beloopana.c \
	be/belower.c \
	be/bemachine.c \
	be/bemachnode.c \
	be/bemain.c \
	be/bemodule.c \
	be/benode.c \
111
	be/bepeephole.c \
112
113
114
115
116
	be/bepressurestat.c \
	be/bera.c \
	be/beraextern.c \
	be/besched.c \
	be/beschedmris.c \
Matthias Braun's avatar
Matthias Braun committed
117
	be/beschednormal.c \
118
119
120
121
122
	be/beschedrand.c \
	be/beschedregpress.c \
	be/beschedrss.c \
	be/beschedtrace.c \
	be/beschedtrivial.c \
Matthias Braun's avatar
Matthias Braun committed
123
	be/bespillbelady2.c \
Matthias Braun's avatar
Matthias Braun committed
124
125
	be/bespillbelady3.c \
	be/bespillbelady.c \
126
127
	be/bespill.c \
	be/bespilldaemel.c \
Matthias Braun's avatar
Matthias Braun committed
128
	be/bespilllinearscan.c \
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
	be/bespilloptions.c \
	be/bespillremat.c \
	be/bespillslots.c \
	be/bessaconstr.c \
	be/bessadestr.c \
	be/bessadestrsimple.c \
	be/bestabs.c \
	be/bestat.c \
	be/bestate.c \
	be/betranshlp.c \
	be/beuses.c \
	be/beutil.c \
	be/beverify.c \
	common/debug.c \
	common/error.c \
	common/firm.c \
	common/firm_common.c \
	common/firmwalk.c \
	common/irtools.c \
	common/statistics.c \
Matthias Braun's avatar
Matthias Braun committed
149
	common/timing.c \
150
151
152
153
154
155
	debug/dbginfo.c \
	debug/debugger.c \
	debug/firm_ycomp.c \
	debug/seqnumbers.c \
	ident/ident.c \
	ident/mangle.c \
Matthias Braun's avatar
Matthias Braun committed
156
	ir/instrument.c \
157
158
159
160
161
	ir/irarch.c \
	ir/irargs.c \
	ir/ircgcons.c \
	ir/ircons.c \
	ir/irdump.c \
Matthias Braun's avatar
Matthias Braun committed
162
	ir/irdump_grgen.c \
163
164
165
166
167
168
169
170
171
	ir/irdumptxt.c \
	ir/iredges.c \
	ir/irflag.c \
	ir/irgmod.c \
	ir/irgopt.c \
	ir/irgraph.c \
	ir/irgwalk_blk.c \
	ir/irgwalk.c \
	ir/irhooks.c \
Matthias Braun's avatar
Matthias Braun committed
172
173
	ir/irlinkednodemap.c \
	ir/irlinkednodeset.c \
174
175
176
177
178
179
180
181
	ir/irmode.c \
	ir/irnode.c \
	ir/irnodemap.c \
	ir/irnodeset.c \
	ir/irop.c \
	ir/iropt.c \
	ir/irphase.c \
	ir/irprintf.c \
Matthias Braun's avatar
Matthias Braun committed
182
	ir/irprofile.c \
183
	ir/irprog.c \
Matthias Braun's avatar
Matthias Braun committed
184
	ir/irssacons.c \
185
186
	ir/irvrfy.c \
	ir/pseudo_irg.c \
Matthias Braun's avatar
Matthias Braun committed
187
	ir/valueset.c \
Matthias Braun's avatar
Matthias Braun committed
188
189
190
191
192
193
194
	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 \
	libcore/lc_type.c \
195
	lower/lower_calls.c \
Matthias Braun's avatar
Matthias Braun committed
196
	lower/lower_copyb.c \
197
198
199
200
	lower/lower_dw.c \
	lower/lower_hl.c \
	lower/lower_intrinsics.c \
	lower/lower_mode_b.c \
201
	lower/lower_switch.c \
202
	net/firmnet.c \
Matthias Braun's avatar
Matthias Braun committed
203
204
205
	obstack/obstack.c \
	obstack/obstack_printf.c \
	opt/boolopt.c \
206
	opt/cfopt.c \
Matthias Braun's avatar
Matthias Braun committed
207
208
	opt/code_placement.c \
	opt/combo.c \
209
210
	opt/condeval.c \
	opt/convopt.c \
Matthias Braun's avatar
Matthias Braun committed
211
	opt/critical_edges.c \
212
213
214
215
216
	opt/data_flow_scalar_replace.c \
	opt/escape_ana.c \
	opt/funccall.c \
	opt/gvn_pre.c \
	opt/ifconv.c \
Matthias Braun's avatar
Matthias Braun committed
217
	opt/ircgopt.c \
218
219
220
221
	opt/ldst2.c \
	opt/ldstopt.c \
	opt/opt_confirms.c \
	opt/opt_frame.c \
Matthias Braun's avatar
Matthias Braun committed
222
	opt/opt_inline.c \
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
	opt/opt_osr.c \
	opt/opt_polymorphy.c \
	opt/proc_cloning.c \
	opt/reassoc.c \
	opt/return.c \
	opt/scalar_replace.c \
	opt/tailrec.c \
	opt/tropt.c \
	stat/const_stat.c \
	stat/dags.c \
	stat/distrib.c \
	stat/firmstat.c \
	stat/pattern.c \
	stat/pattern_dmp.c \
	stat/stat_dmp.c \
	stat/statev.c \
Matthias Braun's avatar
Matthias Braun committed
239
	stat/stat_timing.c \
240
241
242
243
244
	tr/entity.c \
	tr/tpop.c \
	tr/tr_inheritance.c \
	tr/trvrfy.c \
	tr/type.c \
Matthias Braun's avatar
Matthias Braun committed
245
	tr/type_finalization.c \
246
247
248
249
250
251
252
	tr/typegmod.c \
	tr/type_identify.c \
	tr/typewalk.c \
	tv/fltcalc.c \
	tv/strcalc.c \
	tv/tv.c

Matthias Braun's avatar
Matthias Braun committed
253
EXTRA_DIST = \
Matthias Braun's avatar
Matthias Braun committed
254
	ana/irdom_t.h \
Matthias Braun's avatar
Matthias Braun committed
255
256
257
	ana/dfs_t.h \
	ana/irbackedge_t.h \
	ana/irloop_t.h \
Matthias Braun's avatar
Matthias Braun committed
258
259
260
261
262
263
	ana/irextbb_t.h \
	be/belive_t.h \
	be/beifg_impl.h \
	be/bepeephole.h \
	be/bessaconstr.h \
	be/beifg_t.h \
Matthias Braun's avatar
Matthias Braun committed
264
	be/beblocksched.h \
Matthias Braun's avatar
Matthias Braun committed
265
	be/bessadestrsimple.h \
Matthias Braun's avatar
Matthias Braun committed
266
	be/becopyilp_t.h \
Matthias Braun's avatar
Matthias Braun committed
267
268
	be/beverify.h \
	be/bemachine.h \
Matthias Braun's avatar
Matthias Braun committed
269
270
	be/beemitter.h \
	be/begnuas.h \
Matthias Braun's avatar
Matthias Braun committed
271
272
	be/becopyopt_t.h \
	be/bemodule.h \
Matthias Braun's avatar
Matthias Braun committed
273
	be/be_t.h \
Matthias Braun's avatar
Matthias Braun committed
274
	be/bespillremat.h \
Matthias Braun's avatar
Matthias Braun committed
275
276
	be/bejavacoal.h \
	be/belistsched.h \
Matthias Braun's avatar
Matthias Braun committed
277
278
279
280
281
282
283
284
285
286
	be/bessadestr.h \
	be/bechordal_draw.h \
	be/beabi.h \
	be/beflags.h \
	be/bechordal_t.h \
	be/beifg.h \
	be/bespillslots.h \
	be/besched_t.h \
	be/beschedmris.h \
	be/besched.h \
Matthias Braun's avatar
Matthias Braun committed
287
	be/beloopana.h \
Matthias Braun's avatar
Matthias Braun committed
288
289
	be/beilpsched.h \
	be/becopyopt.h \
Matthias Braun's avatar
Matthias Braun committed
290
291
	be/bepressurestat.h \
	be/bestat.h \
Matthias Braun's avatar
Matthias Braun committed
292
293
	be/bemachnode.h \
	be/beabi_t.h \
Matthias Braun's avatar
Matthias Braun committed
294
	be/beuses.h \
Matthias Braun's avatar
Matthias Braun committed
295
296
297
298
299
300
301
302
303
	be/bestate.h \
	be/bespilloptions.h \
	be/bearch_t.h \
	be/bera.h \
	be/beirg_t.h \
	be/beirgmod.h \
	be/beinsn_t.h \
	be/betranshlp.h \
	be/belive.h \
Matthias Braun's avatar
Matthias Braun committed
304
	be/beutil.h \
Matthias Braun's avatar
Matthias Braun committed
305
306
307
308
309
310
311
312
313
314
315
316
317
	be/bestatevent.h \
	be/bespill.h \
	be/be_dbgout.h \
	be/belower.h \
	be/bedomfront.h \
	be/beintlive_t.h \
	be/becopystat.h \
	be/benode_t.h \
	be/bemodule_t.h \
	be/bechordal.h \
	be/bearch.h \
	be/beschedrss.h \
	be/beirg.h \
Matthias Braun's avatar
Matthias Braun committed
318
	be/be_dbgout_t.h \
Matthias Braun's avatar
Matthias Braun committed
319
320
	common/error.h \
	common/statistics.h \
Matthias Braun's avatar
Matthias Braun committed
321
322
323
324
	common/irtools.h \
	common/firmwalk.h \
	common/debug.h \
	common/firm_common_t.h \
Matthias Braun's avatar
Matthias Braun committed
325
326
327
	debug/dbginfo_t.h \
	debug/debugger.h \
	ident/ident_t.h \
Matthias Braun's avatar
Matthias Braun committed
328
	ir/irnodeset.h \
Matthias Braun's avatar
Matthias Braun committed
329
	ir/irop_t.h \
Matthias Braun's avatar
Matthias Braun committed
330
	ir/irmode_t.h \
Matthias Braun's avatar
Matthias Braun committed
331
	ir/irvrfy_t.h \
Matthias Braun's avatar
Matthias Braun committed
332
	ir/iredges_t.h \
Matthias Braun's avatar
Matthias Braun committed
333
334
	ir/irphase_t.h \
	ir/ircons_t.h \
Matthias Braun's avatar
Matthias Braun committed
335
336
	ir/irdump_t.h \
	ir/irdump_grgen.h \
Matthias Braun's avatar
Matthias Braun committed
337
338
339
	ir/irprog_t.h \
	ir/irprofile.h \
	ir/irflag_t.def \
Matthias Braun's avatar
Matthias Braun committed
340
	ir/irtypes.h \
Matthias Braun's avatar
Matthias Braun committed
341
	ir/irnode_t.h \
Matthias Braun's avatar
Matthias Braun committed
342
	ir/irargs_t.h \
Matthias Braun's avatar
Matthias Braun committed
343
344
	ir/irnodemap.h \
	ir/irgraph_t.h \
Matthias Braun's avatar
Matthias Braun committed
345
346
	ir/iropt_t.h \
	ir/irprintf_t.h \
Matthias Braun's avatar
Matthias Braun committed
347
348
349
350
	ir/irbitset.h \
	ir/irflag_t.h \
	ir/irphases_t.h \
	ir/irphaselist.h \
Matthias Braun's avatar
Matthias Braun committed
351
352
353
354
355
	ir/iredgeset.h \
	ir/instrument.h \
	ir/irlinkednodemap.h \
	ir/irlinkednodeset.h \
	ir/valueset.h \
Matthias Braun's avatar
Matthias Braun committed
356
357
358
359
360
361
362
363
364
365
366
367
	libcore/lc_common_t.h \
	libcore/lc_appendable.h \
	libcore/lc_config.h \
	libcore/lc_parser_t.h \
	libcore/lc_printf_arg_types.def \
	libcore/do_bisonflex.sh \
	libcore/lc_config_parser.h \
	libcore/lc_opts_t.h \
	libcore/lc_defines.h \
	libcore/lc_opts_enum.h \
	libcore/lc_opts.h \
	libcore/lc_printf.h \
Matthias Braun's avatar
Matthias Braun committed
368
369
	net/firmnet.h \
	net/firmnet_t.h \
Matthias Braun's avatar
Matthias Braun committed
370
	opt/scalar_replace.h \
Matthias Braun's avatar
Matthias Braun committed
371
372
	opt/opt_confirms.h \
	opt/opt_polymorphy.h \
Matthias Braun's avatar
Matthias Braun committed
373
	opt/tropt.h \
Matthias Braun's avatar
Matthias Braun committed
374
	opt/reassoc_t.h \
Matthias Braun's avatar
Matthias Braun committed
375
	opt/opt_inline_t.h \
Matthias Braun's avatar
Matthias Braun committed
376
	opt/funccall_t.h \
Matthias Braun's avatar
Matthias Braun committed
377
	stat/statev.h \
Matthias Braun's avatar
Matthias Braun committed
378
	stat/stat_dmp.h \
Matthias Braun's avatar
Matthias Braun committed
379
380
381
	stat/firmstat_t.h \
	stat/pattern_dmp.h \
	stat/pattern.h \
Matthias Braun's avatar
Matthias Braun committed
382
383
384
	stat/dags.h \
	stat/counter.h \
	stat/stat_timing.h \
Matthias Braun's avatar
Matthias Braun committed
385
386
	tr/entity_t.h \
	tr/type_t.h \
Matthias Braun's avatar
Matthias Braun committed
387
	tr/tpop_t.h \
Matthias Braun's avatar
Matthias Braun committed
388
389
	tv/strcalc.h \
	tv/tv_t.h \
Matthias Braun's avatar
Matthias Braun committed
390
	tv/fltcalc.h \
Matthias Braun's avatar
Matthias Braun committed
391
392
	be/scripts/generate_emitter_new.pl \
	be/scripts/generate_emitter.pl \
Matthias Braun's avatar
Matthias Braun committed
393
394
395
	be/scripts/generate_machine.pl \
	be/scripts/generate_new_opcodes.pl \
	be/scripts/generate_regalloc_if.pl
Matthias Braun's avatar
Matthias Braun committed
396

Matthias Braun's avatar
Matthias Braun committed
397

398
399
# ia32 backend

400
ia32_sources = \
401
	be/ia32/bearch_ia32.c \
402
403
	be/ia32/ia32_architecture.c \
	be/ia32/ia32_address_mode.c \
404
405
406
407
408
409
410
411
412
413
414
	be/ia32/ia32_emitter.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

Matthias Braun's avatar
Matthias Braun committed
415
416
417
418
419
420
421
422
423
424
425
426
ia32_built_sources = \
	be/ia32/gen_ia32_emitter.c \
	be/ia32/gen_ia32_emitter.h \
	be/ia32/gen_ia32_machine.c \
	be/ia32/gen_ia32_machine.h \
	be/ia32/gen_ia32_regalloc_if.c \
	be/ia32/gen_ia32_regalloc_if.h \
	be/ia32/gen_ia32_new_nodes.c.inl \
	be/ia32/gen_ia32_new_nodes.h
MAINTAINERCLEANFILES = $(ia32_built_sources)
BUILT_SOURCES        = $(ia32_built_sources)
libfirm_la_SOURCES  += $(ia32_sources) $(ia32_built_sources)
427

Matthias Braun's avatar
Matthias Braun committed
428
429
EXTRA_DIST += \
	be/ia32/ia32_spec.pl \
Matthias Braun's avatar
Matthias Braun committed
430
	be/ia32/ia32_simd_spec.pl \
Matthias Braun's avatar
Matthias Braun committed
431
	be/ia32/bearch_ia32_t.h \
432
433
	be/ia32/ia32_architecture.h \
	be/ia32/ia32_address_mode.h \
Matthias Braun's avatar
Matthias Braun committed
434
435
436
437
438
439
440
441
442
443
444
445
	be/ia32/ia32_dbg_stat.h \
	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_transform.h \
	be/ia32/ia32_util.h \
	be/ia32/ia32_x87.h

446
447
448
449
450
451
452
453
454
455
456
457
458
$(srcdir)/be/ia32/gen_ia32_new_nodes.c.inl $(srcdir)/be/ia32/gen_ia32_new_nodes.h: \
		be/ia32/ia32_spec.pl be/scripts/generate_new_opcodes.pl
	$(PERL) $(srcdir)/be/scripts/generate_new_opcodes.pl $(srcdir)/be/ia32/ia32_spec.pl $(srcdir)/be/ia32

$(srcdir)/be/ia32/gen_ia32_emitter.c $(srcdir)/be/ia32/gen_ia32_emitter.h: \
		be/ia32/ia32_spec.pl be/scripts/generate_emitter.pl
	$(PERL) $(srcdir)/be/scripts/generate_emitter.pl $(srcdir)/be/ia32/ia32_spec.pl $(srcdir)/be/ia32

$(srcdir)/be/ia32/gen_ia32_machine.c $(srcdir)/be/ia32/gen_ia32_machine.h: \
		be/ia32/ia32_spec.pl be/scripts/generate_machine.pl
	$(PERL) $(srcdir)/be/scripts/generate_machine.pl $(srcdir)/be/ia32/ia32_spec.pl $(srcdir)/be/ia32

$(srcdir)/be/ia32/gen_ia32_regalloc_if.c $(srcdir)/be/ia32/gen_ia32_regalloc_if.h: \
459
		be/ia32/ia32_spec.pl be/scripts/generate_regalloc_if.pl
460
461
462
463
	$(PERL) $(srcdir)/be/scripts/generate_regalloc_if.pl $(srcdir)/be/ia32/ia32_spec.pl $(srcdir)/be/ia32

# arm backend

464
arm_sources = \
465
466
467
468
	be/arm/bearch_arm.c \
	be/arm/arm_emitter.c \
	be/arm/arm_map_regs.c \
	be/arm/arm_new_nodes.c \
Matthias Braun's avatar
Matthias Braun committed
469
	be/arm/arm_optimize.c \
470
	be/arm/arm_transform.c
Matthias Braun's avatar
Matthias Braun committed
471
472
473
474
475
476
477
478
479
480
481
482
arm_built_sources = \
	be/arm/gen_arm_emitter.c \
	be/arm/gen_arm_emitter.h \
	be/arm/gen_arm_machine.c \
	be/arm/gen_arm_machine.h \
	be/arm/gen_arm_regalloc_if.c \
	be/arm/gen_arm_regalloc_if.h \
	be/arm/gen_arm_new_nodes.c.inl \
	be/arm/gen_arm_new_nodes.h
MAINTAINERCLEANFILES += $(arm_built_sources)
BUILT_SOURCES += $(arm_built_sources)
libfirm_la_SOURCES += $(arm_sources) $(arm_built_sources)
483

Matthias Braun's avatar
Matthias Braun committed
484
485
486
487
488
489
490

EXTRA_DIST += \
	be/arm/arm_spec.pl \
	be/arm/arm_emitter.h \
	be/arm/arm_map_regs.h \
	be/arm/arm_new_nodes.h \
	be/arm/arm_nodes_attr.h \
Matthias Braun's avatar
Matthias Braun committed
491
	be/arm/arm_optimize.h \
Matthias Braun's avatar
Matthias Braun committed
492
493
	be/arm/arm_transform.h \
	be/arm/bearch_arm.h \
494
	be/arm/bearch_arm_t.h
Matthias Braun's avatar
Matthias Braun committed
495

496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
$(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_new_opcodes.pl
	$(PERL) $(srcdir)/be/scripts/generate_new_opcodes.pl $(srcdir)/be/arm/arm_spec.pl $(srcdir)/be/arm

$(srcdir)/be/arm/gen_arm_emitter.c $(srcdir)/be/arm/gen_arm_emitter.h: \
		be/arm/arm_spec.pl be/scripts/generate_emitter.pl
	$(PERL) $(srcdir)/be/scripts/generate_emitter.pl $(srcdir)/be/arm/arm_spec.pl $(srcdir)/be/arm

$(srcdir)/be/arm/gen_arm_machine.c $(srcdir)/be/arm/gen_arm_machine.h: \
		be/arm/arm_spec.pl be/scripts/generate_machine.pl
	$(PERL) $(srcdir)/be/scripts/generate_machine.pl $(srcdir)/be/arm/arm_spec.pl $(srcdir)/be/arm

$(srcdir)/be/arm/gen_arm_regalloc_if.c $(srcdir)/be/arm/gen_arm_regalloc_if.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

514
mips_sources = \
515
516
517
518
519
520
	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
Matthias Braun's avatar
Matthias Braun committed
521
522
523
524
525
526
527
528
529
530
531
532
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_regalloc_if.c \
	be/mips/gen_mips_regalloc_if.h \
	be/mips/gen_mips_new_nodes.c.inl \
	be/mips/gen_mips_new_nodes.h
MAINTAINERCLEANFILES += $(mips_built_sources)
BUILT_SOURCES += $(mips_built_sources)
libfirm_la_SOURCES += $(mips_sources) $(mips_built_sources)
533

Matthias Braun's avatar
Matthias Braun committed
534
535
536
537
538
539
540
541
542
543
544
545
EXTRA_DIST += \
	be/mips/mips_spec.pl \
	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_transform.h \
	be/mips/mips_util.h

546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
$(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

564
ppc32_sources = \
565
566
567
568
569
570
	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
Matthias Braun's avatar
Matthias Braun committed
571
572
573
574
575
576
577
578
579
580
581
582
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_regalloc_if.c \
	be/ppc32/gen_ppc32_regalloc_if.h \
	be/ppc32/gen_ppc32_new_nodes.c.inl \
	be/ppc32/gen_ppc32_new_nodes.h
MAINTAINERCLEANFILES += $(ppc32_built_sources)
BUILT_SOURCES += $(ppc32_built_sources)
libfirm_la_SOURCES += $(ppc32_sources) $(ppc32_built_sources)
583

Matthias Braun's avatar
Matthias Braun committed
584
585
586
587
588
589
590
591
592
593
594
EXTRA_DIST += \
	be/ppc32/ppc32_spec.pl \
	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_transform_conv.h \
	be/ppc32/ppc32_transform.h

595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
$(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