Makefile revision 235318a578b3d7772a60590c7e76791ed6d1a78e
1
2TOP = ../../../..
3include $(TOP)/configs/current
4
5include Makefile.sources
6
7LIBNAME = radeon
8
9LIBRARY_INCLUDES = -I$(TOP)/include
10
11TBLGEN = $(LLVM_BINDIR)/llvm-tblgen
12
13CXXFLAGS+= $(LLVM_CXXFLAGS)
14
15include ../../Makefile.template
16
17CXXFLAGS := $(filter-out -DDEBUG, $(CXXFLAGS))
18
19tablegen = $(TBLGEN) -I $(LLVM_INCLUDEDIR) $1 $2 -o $3
20
21HAVE_LLVM_INTRINSICS = $(shell grep IntrinsicsR600.td $(LLVM_INCLUDEDIR)/llvm/Intrinsics.td)
22
23gen: $(GENERATED_SOURCES)
24
25SIRegisterInfo.td: SIGenRegisterInfo.pl
26	$(PERL) $^ > $@
27
28SIRegisterGetHWRegNum.inc: SIGenRegisterInfo.pl
29	$(PERL) $^ $@ > /dev/null
30
31R600Intrinsics.td: R600IntrinsicsNoOpenCL.td R600IntrinsicsOpenCL.td
32ifeq ($(HAVE_LLVM_INTRINSICS),)
33	cp R600IntrinsicsNoOpenCL.td R600Intrinsics.td
34else
35	cp R600IntrinsicsOpenCL.td R600Intrinsics.td
36endif
37
38R600RegisterInfo.td: R600GenRegisterInfo.pl
39	$(PERL) $^ > $@
40
41AMDGPUGenRegisterInfo.inc: *.td
42	$(call tablegen, -gen-register-info, AMDGPU.td, $@)
43
44AMDGPUGenInstrInfo.inc: *.td
45	$(call tablegen, -gen-instr-info, AMDGPU.td, $@)
46
47AMDGPUGenAsmWriter.inc: *.td
48	$(call tablegen, -gen-asm-writer, AMDGPU.td, $@)
49
50AMDGPUGenDAGISel.inc: *.td
51	$(call tablegen, -gen-dag-isel, AMDGPU.td, $@)
52
53AMDGPUGenCallingConv.inc: *.td
54	$(call tablegen, -gen-callingconv, AMDGPU.td, $@)
55
56AMDGPUGenSubtargetInfo.inc: *.td
57	$(call tablegen, -gen-subtarget, AMDGPU.td, $@)
58
59AMDGPUGenEDInfo.inc: *.td
60	$(call tablegen, -gen-enhanced-disassembly-info, AMDGPU.td, $@)
61
62AMDGPUGenIntrinsics.inc: *.td
63	$(call tablegen, -gen-tgt-intrinsic, AMDGPU.td, $@)
64
65AMDGPUGenCodeEmitter.inc: *.td
66	$(call tablegen, -gen-emitter, AMDGPU.td, $@)
67
68AMDGPUGenMCCodeEmitter.inc: *.td
69	$(call tablegen, -mc-emitter -gen-emitter, AMDGPU.td, $@)
70
71AMDGPUGenDFAPacketizer.inc: *.td
72	$(call tablegen, -gen-dfa-packetizer, AMDGPU.td, $@)
73
74LOADER_LIBS=$(shell llvm-config --libs bitreader asmparser)
75loader: loader.o libradeon.a
76	gcc -o loader $(LLVM_LDFLAGS) -L/usr/local/lib $(LDFLAGS) loader.o libradeon.a $(LLVM_LIBS) $(LOADER_LIBS) -lpthread -ldl -lstdc++ -lm
77