topdir = ../../..
subdir := ir/be/ia32
full_dir = $(top_srcdir)/ir/be
-full_dirbe = $(full_dir)/$(FIRMBE_ARCH)
+full_dirbe = $(full_dir)/ia32
+arch = ia32
-SOURCES = Makefile.in new_nodes.c new_nodes.h emitter_gen.c emitter_gen.h transform.c transform.h gen_decls.c gen_decls.h emitter.c emitter.h
+SOURCES = Makefile.in $(arch)_new_nodes.c $(arch)_new_nodes.h gen_$(arch)_new_nodes.c.inl gen_$(arch)_new_nodes.h \
+ gen_$(arch)_emitter.c gen_$(arch)_emitter.h $(arch)_emitter.c $(arch)_emitter.h \
+ bearch_$(arch).c gen_$(arch)_regalloc_if_t.h gen_$(arch)_regalloc_if.h gen_$(arch)_regalloc_if.c \
+ $(arch)_transform.c $(arch)_transform.h $(arch)_gen_decls.c $(arch)_gen_decls.h \
+ $(arch)_map_regs.c $(arch)_map_regs.h $(arch)_optimize.c $(arch)_optimize.h \
+ $(arch)_x87.c $(arch)_x87.h $(arch)_intrinsics.c
include $(topdir)/MakeRules
-I$(top_srcdir)/ir/ident -I$(top_srcdir)/ir/tr -I$(top_srcdir)/ir/tv \
-I$(top_srcdir)/ir/debug -I$(top_srcdir)/ir/ana -I$(top_srcdir)/ir/st \
-I$(top_srcdir)/ir/stat -I$(top_srcdir)/ir/external -I$(top_srcdir)/ir/ana2 \
- -I$(topdir)/ir/config
+ -I$(topdir)/ir/config -I$(top_srcdir)/ir/arch -I$(top_srcdir)/ir/lower
include $(top_srcdir)/MakeTargets
-$(full_dirbe)/new_nodes.c $(full_dirbe)/new_nodes.h: $(full_dir)/scripts/generate_new_opcodes.pl $(full_dirbe)/$(FIRMBE_ARCH)_spec.pl dump_support.inl
- $(full_dir)/scripts/generate_new_opcodes.pl $(full_dirbe)/$(FIRMBE_ARCH)_spec.pl $(full_dirbe)
+$(full_dirbe)/$(arch)_new_nodes.c: $(full_dirbe)/gen_$(arch)_regalloc_if.h $(full_dirbe)/gen_$(arch)_new_nodes.c.inl
-$(full_dirbe)/emitter_gen.c $(full_dirbe)/emitter_gen.h: $(full_dir)/scripts/generate_emitter.pl $(full_dirbe)/$(FIRMBE_ARCH)_spec.pl emitter.c emitter.h
- $(full_dir)/scripts/generate_emitter.pl $(full_dirbe)/$(FIRMBE_ARCH)_spec.pl $(full_dirbe)
+$(full_dirbe)/$(arch)_new_nodes.h: $(full_dirbe)/gen_$(arch)_new_nodes.h
+
+$(full_dirbe)/bearch_$(arch).c: $(full_dirbe)/gen_$(arch)_regalloc_if.h
+
+$(full_dirbe)/gen_$(arch)_new_nodes.c.inl $(full_dirbe)/gen_$(arch)_new_nodes.h: $(full_dir)/scripts/generate_new_opcodes.pl $(full_dirbe)/$(arch)_spec.pl
+ $(full_dir)/scripts/generate_new_opcodes.pl $(full_dirbe)/$(arch)_spec.pl $(full_dirbe)
+
+$(full_dirbe)/gen_$(arch)_emitter.c $(full_dirbe)/gen_$(arch)_emitter.h: $(full_dir)/scripts/generate_emitter.pl $(full_dirbe)/$(arch)_spec.pl
+ $(full_dir)/scripts/generate_emitter.pl $(full_dirbe)/$(arch)_spec.pl $(full_dirbe)
+
+$(full_dirbe)/gen_$(arch)_regalloc_if.c $(full_dirbe)/gen_$(arch)_regalloc_if.h $(full_dirbe)/gen_$(arch)_regalloc_if_t.h: $(full_dir)/scripts/generate_regalloc_if.pl $(full_dirbe)/$(arch)_spec.pl
+ $(full_dir)/scripts/generate_regalloc_if.pl $(full_dirbe)/$(arch)_spec.pl $(full_dirbe)
all: subdir.o