blob: 91a52e6390db881944a7037c9b0fc8f0544de04c [file] [log] [blame]
Harish Mahendrakar0d8951c2014-05-16 10:31:13 -07001libhevcd_inc_dir_arm += $(LOCAL_PATH)/decoder/arm
2libhevcd_inc_dir_arm += $(LOCAL_PATH)/common/arm
3
4libhevcd_srcs_c_arm += decoder/arm/ihevcd_function_selector.c
5libhevcd_srcs_c_arm += decoder/arm/ihevcd_function_selector_noneon.c
Naveen Kumar Ponnusamy221aacc2014-10-28 11:23:59 +05306libhevcd_cflags_arm += -DDISABLE_NEONINTR -DARM -DARMGCC -fno-tree-vectorize
Harish Mahendrakar0d8951c2014-05-16 10:31:13 -07007
8LOCAL_ARM_MODE := arm
9
10ifeq ($(ARCH_ARM_HAVE_NEON),true)
11libhevcd_srcs_c_arm += decoder/arm/ihevcd_function_selector_a9q.c
12libhevcd_srcs_c_arm += common/arm/ihevc_intra_ref_substitution_a9q.c
13libhevcd_srcs_c_arm += common/arm/ihevc_intra_pred_filters_neon_intr.c
14libhevcd_srcs_c_arm += common/arm/ihevc_weighted_pred_neon_intr.c
15
16libhevcd_srcs_asm_arm += common/arm/ihevc_mem_fns.s
17libhevcd_srcs_asm_arm += common/arm/ihevc_itrans_recon_32x32.s
18libhevcd_srcs_asm_arm += common/arm/ihevc_weighted_pred_bi_default.s
19libhevcd_srcs_asm_arm += common/arm/ihevc_weighted_pred_bi.s
20libhevcd_srcs_asm_arm += common/arm/ihevc_weighted_pred_uni.s
21libhevcd_srcs_asm_arm += common/arm/ihevc_deblk_luma_horz.s
22libhevcd_srcs_asm_arm += common/arm/ihevc_deblk_luma_vert.s
23libhevcd_srcs_asm_arm += common/arm/ihevc_deblk_chroma_vert.s
24libhevcd_srcs_asm_arm += common/arm/ihevc_deblk_chroma_horz.s
25libhevcd_srcs_asm_arm += common/arm/ihevc_sao_band_offset_luma.s
26libhevcd_srcs_asm_arm += common/arm/ihevc_sao_band_offset_chroma.s
27libhevcd_srcs_asm_arm += common/arm/ihevc_sao_edge_offset_class0.s
28libhevcd_srcs_asm_arm += common/arm/ihevc_sao_edge_offset_class0_chroma.s
29libhevcd_srcs_asm_arm += common/arm/ihevc_sao_edge_offset_class1.s
30libhevcd_srcs_asm_arm += common/arm/ihevc_sao_edge_offset_class1_chroma.s
31libhevcd_srcs_asm_arm += common/arm/ihevc_sao_edge_offset_class2.s
32libhevcd_srcs_asm_arm += common/arm/ihevc_sao_edge_offset_class2_chroma.s
33libhevcd_srcs_asm_arm += common/arm/ihevc_sao_edge_offset_class3.s
34libhevcd_srcs_asm_arm += common/arm/ihevc_sao_edge_offset_class3_chroma.s
35libhevcd_srcs_asm_arm += common/arm/ihevc_inter_pred_luma_horz_w16out.s
36libhevcd_srcs_asm_arm += common/arm/ihevc_inter_pred_filters_luma_horz.s
37libhevcd_srcs_asm_arm += common/arm/ihevc_inter_pred_filters_luma_vert.s
38libhevcd_srcs_asm_arm += common/arm/ihevc_inter_pred_chroma_horz.s
39libhevcd_srcs_asm_arm += common/arm/ihevc_inter_pred_chroma_horz_w16out.s
40libhevcd_srcs_asm_arm += common/arm/ihevc_inter_pred_chroma_vert.s
41libhevcd_srcs_asm_arm += common/arm/ihevc_inter_pred_chroma_vert_w16out.s
42libhevcd_srcs_asm_arm += common/arm/ihevc_inter_pred_chroma_vert_w16inp.s
43libhevcd_srcs_asm_arm += common/arm/ihevc_inter_pred_chroma_vert_w16inp_w16out.s
44libhevcd_srcs_asm_arm += common/arm/ihevc_inter_pred_filters_luma_vert_w16inp.s
45libhevcd_srcs_asm_arm += common/arm/ihevc_inter_pred_luma_vert_w16inp_w16out.s
46libhevcd_srcs_asm_arm += common/arm/ihevc_inter_pred_luma_copy_w16out.s
47libhevcd_srcs_asm_arm += common/arm/ihevc_inter_pred_luma_copy.s
48libhevcd_srcs_asm_arm += common/arm/ihevc_inter_pred_chroma_copy.s
49libhevcd_srcs_asm_arm += common/arm/ihevc_inter_pred_chroma_copy_w16out.s
50libhevcd_srcs_asm_arm += common/arm/ihevc_itrans_recon_4x4_ttype1.s
51libhevcd_srcs_asm_arm += common/arm/ihevc_itrans_recon_4x4.s
52libhevcd_srcs_asm_arm += common/arm/ihevc_itrans_recon_8x8.s
53libhevcd_srcs_asm_arm += common/arm/ihevc_itrans_recon_16x16.s
54libhevcd_srcs_asm_arm += common/arm/ihevc_intra_pred_chroma_planar.s
55libhevcd_srcs_asm_arm += common/arm/ihevc_intra_pred_chroma_dc.s
56libhevcd_srcs_asm_arm += common/arm/ihevc_intra_pred_chroma_horz.s
57libhevcd_srcs_asm_arm += common/arm/ihevc_intra_pred_chroma_ver.s
58libhevcd_srcs_asm_arm += common/arm/ihevc_intra_pred_chroma_mode2.s
59libhevcd_srcs_asm_arm += common/arm/ihevc_intra_pred_chroma_mode_18_34.s
60libhevcd_srcs_asm_arm += common/arm/ihevc_intra_pred_filters_chroma_mode_11_to_17.s
61libhevcd_srcs_asm_arm += common/arm/ihevc_intra_pred_filters_chroma_mode_19_to_25.s
62libhevcd_srcs_asm_arm += common/arm/ihevc_intra_pred_chroma_mode_3_to_9.s
63libhevcd_srcs_asm_arm += common/arm/ihevc_intra_pred_chroma_mode_27_to_33.s
64libhevcd_srcs_asm_arm += common/arm/ihevc_intra_pred_luma_planar.s
65libhevcd_srcs_asm_arm += common/arm/ihevc_intra_pred_luma_horz.s
66libhevcd_srcs_asm_arm += common/arm/ihevc_intra_pred_luma_mode2.s
67libhevcd_srcs_asm_arm += common/arm/ihevc_intra_pred_luma_mode_27_to_33.s
68libhevcd_srcs_asm_arm += common/arm/ihevc_intra_pred_luma_mode_18_34.s
69libhevcd_srcs_asm_arm += common/arm/ihevc_intra_pred_luma_vert.s
70libhevcd_srcs_asm_arm += common/arm/ihevc_intra_pred_luma_dc.s
71libhevcd_srcs_asm_arm += common/arm/ihevc_intra_pred_filters_luma_mode_11_to_17.s
72libhevcd_srcs_asm_arm += common/arm/ihevc_intra_pred_filters_luma_mode_19_to_25.s
73libhevcd_srcs_asm_arm += common/arm/ihevc_intra_pred_luma_mode_3_to_9.s
74libhevcd_srcs_asm_arm += common/arm/ihevc_padding.s
75
76libhevcd_srcs_asm_arm += decoder/arm/ihevcd_itrans_recon_dc_luma.s
77libhevcd_srcs_asm_arm += decoder/arm/ihevcd_itrans_recon_dc_chroma.s
78libhevcd_srcs_asm_arm += decoder/arm/ihevcd_fmt_conv_420sp_to_420p.s
79libhevcd_srcs_asm_arm += decoder/arm/ihevcd_fmt_conv_420sp_to_420sp.s
80libhevcd_srcs_asm_arm += decoder/arm/ihevcd_fmt_conv_420sp_to_rgba8888.s
81libhevcd_cflags_arm += -DDEFAULT_ARCH=D_ARCH_ARM_A9Q
82else
83libhevcd_cflags_arm += -DDISABLE_NEON -DDEFAULT_ARCH=D_ARCH_ARM_NONEON
84endif
85
86LOCAL_SRC_FILES_arm += $(libhevcd_srcs_c_arm) $(libhevcd_srcs_asm_arm)
87LOCAL_C_INCLUDES_arm += $(libhevcd_inc_dir_arm)
88LOCAL_CFLAGS_arm += $(libhevcd_cflags_arm)