summaryrefslogtreecommitdiff
path: root/shaders/h264/mc/Makefile.am
blob: a4ab3c05d91be9066e2c6eef77e5a386ff25b8f4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
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
61
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
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184

INTEL_G4I = 

INTEL_G4A = null.g4a

INTEL_G4B = null.g4b

INTEL_G4B_GEN5 = null.g4b.gen5

INTEL_MC_G4B_GEN5 = avc_mc.g4b.gen5
INTEL_MC_EXPORT_GEN5 = export.inc.gen5

INTEL_MC_ASM =	\
	add_Error_16x16_Y.asm	\
	add_Error_UV.asm	\
	AllAVC.asm	\
	AllAVCField.asm	\
	AllAVCFrame.asm	\
	AllAVCMBAFF.asm	\
	AllIntra.asm	\
	AVCMCInter.asm	\
	BSDReset.asm	\
	chromaMVAdjust.asm	\
	DCResetDummy.asm	\
	Decode_Chroma_Intra.asm	\
	EndIntraThread.asm	\
	initialize_MBPara.asm	\
	interpolate_C_2x2.asm	\
	interpolate_C_4x4.asm	\
	interpolate_Y_4x4.asm	\
	interpolate_Y_8x8.asm	\
	Intra_16x16.asm	\
	Intra_4x4.asm	\
	Intra_8x8.asm	\
	Intra_funcLib.asm	\
	Intra_PCM.asm	\
	intra_pred_16x16_Y.asm	\
	intra_Pred_4x4_Y_4.asm	\
	intra_Pred_8x8_Y.asm	\
	intra_Pred_Chroma.asm	\
	load_Intra_Ref_UV.asm	\
	load_Intra_Ref_Y.asm	\
	loadRef_C_10x5.asm	\
	loadRef_C_6x3.asm	\
	loadRef_Y_16x13.asm	\
	loadRef_Y_16x9.asm	\
	recon_C_4x4.asm	\
	recon_Y_8x8.asm	\
	roundShift_C_4x4.asm	\
	save_16x16_Y.asm	\
	save_4x4_Y.asm	\
	save_8x8_UV.asm	\
	save_8x8_Y.asm	\
	save_I_PCM.asm	\
	scoreboard.asm	\
	scoreboard_MBAFF.asm	\
	scoreboard_restore_AS.asm	\
	scoreboard_save_AS.asm	\
	scoreboard_sip.asm	\
	scoreboard_start_inter.asm	\
	scoreboard_start_intra.asm	\
	scoreboard_update.asm	\
	SetHWScoreboard.asm	\
	SetHWScoreboard_MBAFF.asm	\
	set_SB_offset.asm	\
	SetupForHWMC.asm	\
	weightedPred.asm	\
	writeRecon_C_8x4.asm	\
	writeRecon_Y_16x8.asm	\
	writeRecon_YC.asm

INTEL_ILDB_ASM = \
	../ildb/AVC_ILDB_Child_Field_UV.asm	\
	../ildb/AVC_ILDB_Child_Field_Y.asm	\
	../ildb/AVC_ILDB_Child_Mbaff_UV.asm	\
	../ildb/AVC_ILDB_Child_Mbaff_Y.asm	\
	../ildb/AVC_ILDB_Child_UV.asm	\
	../ildb/AVC_ILDB_Child_Y.asm	\
	../ildb/AVC_ILDB_Chroma_Core.asm	\
	../ildb/AVC_ILDB_Chroma_Core_Mbaff.asm	\
	../ildb/AVC_ILDB_CloseGateway.asm	\
	../ildb/AVC_ILDB_Dep_Check.asm	\
	../ildb/AVC_ILDB_Filter_Mbaff_UV_h.asm	\
	../ildb/AVC_ILDB_Filter_Mbaff_UV_v.asm	\
	../ildb/AVC_ILDB_Filter_Mbaff_Y_h.asm	\
	../ildb/AVC_ILDB_Filter_Mbaff_Y_v.asm	\
	../ildb/AVC_ILDB_Filter_UV_h.asm	\
	../ildb/AVC_ILDB_Filter_UV_v.asm	\
	../ildb/AVC_ILDB_Filter_Y_h.asm	\
	../ildb/AVC_ILDB_Filter_Y_v.asm	\
	../ildb/AVC_ILDB_ForwardMsg.asm	\
	../ildb/AVC_ILDB_Luma_Core.asm	\
	../ildb/AVC_ILDB_Luma_Core_Mbaff.asm	\
	../ildb/AVC_ILDB_LumaThrdLimit.asm	\
	../ildb/AVC_ILDB_OpenGateway.asm	\
	../ildb/AVC_ILDB_Root_Field_UV.asm	\
	../ildb/AVC_ILDB_Root_Field_Y.asm	\
	../ildb/AVC_ILDB_Root_Mbaff_UV.asm	\
	../ildb/AVC_ILDB_Root_Mbaff_Y.asm	\
	../ildb/AVC_ILDB_Root_UV.asm	\
	../ildb/AVC_ILDB_Root_Y.asm	\
	../ildb/AVC_ILDB_Spawn.asm	\
	../ildb/AVC_ILDB_SpawnChild.asm	\
	../ildb/AVC_ILDB_SpawnChromaRoot.asm	\
	../ildb/load_Cur_UV_8x8T.asm	\
	../ildb/load_Cur_UV_8x8T_Mbaff.asm	\
	../ildb/load_Cur_UV_Right_Most_2x8.asm	\
	../ildb/load_Cur_Y_16x16T.asm	\
	../ildb/load_Cur_Y_16x16T_Mbaff.asm	\
	../ildb/load_Cur_Y_Right_Most_4x16.asm	\
	../ildb/Load_ILDB_Cntrl_Data_16DW.asm	\
	../ildb/Load_ILDB_Cntrl_Data_22DW.asm	\
	../ildb/Load_ILDB_Cntrl_Data_64DW.asm	\
	../ildb/Load_ILDB_Cntrl_Data.asm	\
	../ildb/load_Left_UV_2x8T.asm	\
	../ildb/load_Left_UV_2x8T_Mbaff.asm	\
	../ildb/load_Left_Y_4x16T.asm	\
	../ildb/load_Left_Y_4x16T_Mbaff.asm	\
	../ildb/loadNV12_16x16T.asm	\
	../ildb/loadNV12_16x4.asm	\
	../ildb/load_Top_UV_8x2.asm	\
	../ildb/load_Top_UV_8x2_Mbaff.asm	\
	../ildb/load_Top_Y_16x4.asm	\
	../ildb/load_Top_Y_16x4_Mbaff.asm	\
	../ildb/save_Cur_UV_8x8.asm	\
	../ildb/save_Cur_UV_8x8_Mbaff.asm	\
	../ildb/save_Cur_Y_16x16.asm	\
	../ildb/save_Cur_Y_16x16_Mbaff.asm	\
	../ildb/save_Left_UV_8x2T.asm	\
	../ildb/save_Left_UV_8x2T_Mbaff.asm	\
	../ildb/save_Left_Y_16x4T.asm	\
	../ildb/save_Left_Y_16x4T_Mbaff.asm	\
	../ildb/saveNV12_16x16.asm	\
	../ildb/saveNV12_16x4.asm	\
	../ildb/saveNV12_16x4T.asm	\
	../ildb/save_Top_UV_8x2.asm	\
	../ildb/save_Top_UV_8x2_Mbaff.asm	\
	../ildb/save_Top_Y_16x4.asm	\
	../ildb/save_Top_Y_16x4_Mbaff.asm	\
	../ildb/SetupVPKernel.asm	\
	../ildb/Transpose_Cur_UV_2x8.asm	\
	../ildb/Transpose_Cur_UV_8x8.asm	\
	../ildb/Transpose_Cur_UV_Right_Most_2x8.asm	\
	../ildb/Transpose_Cur_Y_16x16.asm	\
	../ildb/Transpose_Cur_Y_4x16.asm	\
	../ildb/Transpose_Cur_Y_Right_Most_4x16.asm	\
	../ildb/Transpose_Left_UV_2x8.asm	\
	../ildb/Transpose_Left_Y_4x16.asm	\
	../ildb/TransposeNV12_16x16.asm	\
	../ildb/TransposeNV12_4x16.asm	\
	../ildb/writeURB.asm	\
	../ildb/writeURB_UV_Child.asm	\
	../ildb/writeURB_Y_Child.asm

EXTRA_DIST = $(INTEL_G4I)	\
	     $(INTEL_G4A)       \
	     $(INTEL_G4B)    	\
	     $(INTEL_G4B_GEN5)

if HAVE_GEN4ASM

SUFFIXES = .g4a .g4b
.g4a.g4b:
	m4 $*.g4a > $*.g4m && intel-gen4asm -o $@ $*.g4m && intel-gen4asm -g 5 -o $@.gen5 $*.g4m && rm $*.g4m

$(INTEL_MC_G4B_GEN5): $(INTEL_MC_ASM) $(INTEL_ILDB_ASM)
	@cpp -D DEV_ILK -I ../ildb/ AllAVC.asm > a.asm; \
	../../gpp.py a.asm avc_mc.asm; \
	intel-gen4asm -l list -a -e _export.inc -o $@ -g 5 avc_mc.asm; \
	cpp -D DEV_ILK -I ../ildb/ AllAVC.asm > a.asm; \
	../../gpp.py a.asm avc_mc.asm; \
	intel-gen4asm -l list -a -e _export.inc -o $@ -g 5 avc_mc.asm; \
	cat _export.inc | sed "s/_IP/_IP_GEN5/g" > $(INTEL_MC_EXPORT_GEN5); \
	rm a.asm avc_mc.asm _export.inc

$(INTEL_G4B): $(INTEL_G4I)

BUILT_SOURCES= $(INTEL_G4B) $(INTEL_MC_G4B) $(INTEL_MC_G4B_GEN5)

clean-local:
	-rm -f $(INTEL_G4B)
	-rm -f $(INTEL_G4B_GEN5)
	-rm -f $(INTEL_MC_G4B_GEN5) $(INTEL_MC_EXPORT_GEN5)
endif