• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1//
2// Copyright (C) 2016 The Android Open Source Project
3//
4// Licensed under the Apache License, Version 2.0 (the "License");
5// you may not use this file except in compliance with the License.
6// You may obtain a copy of the License at
7//
8//      http://www.apache.org/licenses/LICENSE-2.0
9//
10// Unless required by applicable law or agreed to in writing, software
11// distributed under the License is distributed on an "AS IS" BASIS,
12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13// See the License for the specific language governing permissions and
14// limitations under the License.
15//
16
17package {
18    default_applicable_licenses: ["external_arm-neon-tests_license"],
19}
20
21// Added automatically by a large-scale-change that took the approach of
22// 'apply every license found to every target'. While this makes sure we respect
23// every license restriction, it may not be entirely correct.
24//
25// e.g. GPL in an MIT project might only apply to the contrib/ directory.
26//
27// Please consider splitting the single license below into multiple licenses,
28// taking care not to lose any license_kind information, and overriding the
29// default license using the 'licenses: [...]' property on targets as needed.
30//
31// For unused files, consider creating a 'fileGroup' with "//visibility:private"
32// to attach the license to, and including a comment whether the files may be
33// used in the current project.
34//
35// large-scale-change included anything that looked like it might be a license
36// text as a license_text. e.g. LICENSE, NOTICE, COPYING etc.
37//
38// Please consider removing redundant or irrelevant files from 'license_text:'.
39// See: http://go/android-license-faq
40license {
41    name: "external_arm-neon-tests_license",
42    visibility: [":__subpackages__"],
43    license_kinds: [
44        "SPDX-license-identifier-Apache-1.1",
45        "SPDX-license-identifier-Apache-2.0",
46        "SPDX-license-identifier-CPL-1.0",
47        "SPDX-license-identifier-EPL",
48        "SPDX-license-identifier-GPL-2.0",
49        "SPDX-license-identifier-LGPL-2.1",
50        "SPDX-license-identifier-MIT",
51    ],
52    license_text: [
53        "LICENSE",
54        "license.html",
55    ],
56}
57
58cc_defaults {
59    name: "arm_neon_tests_defaults",
60    cflags: [
61        "-DREFFILE=\"stm-arm-neon.gccarm\"",
62        "-DGCCTESTS_FILE=\"expected_input4gcc.txt\"",
63
64        "-Wall",
65        "-Werror",
66        "-Wno-format",
67        "-Wno-ignored-qualifiers",
68        "-Wno-uninitialized",
69        "-Wno-unused-function",
70        "-Wno-unused-variable",
71    ],
72
73    srcs: [
74        "compute_ref.c",
75
76        // List of validated intrinsics (copy-pasted from Makefile)
77        "ref_vld1.c",
78        "ref_vadd.c",
79        "ref_vld1_lane.c",
80        "ref_vld1_dup.c",
81        "ref_vdup.c",
82        "ref_vget_high.c",
83        "ref_vget_low.c",
84        "ref_vqdmlal_lane.c",
85        "ref_vqdmlsl_lane.c",
86        "ref_vext.c",
87        "ref_vshrn_n.c",
88        "ref_vset_lane.c",
89        "ref_vget_lane.c",
90        "ref_vqsub.c",
91        "ref_vqdmulh_lane.c",
92        "ref_vqdmull.c",
93        "ref_vqdmlal.c",
94        "ref_vqdmlsl.c",
95        "ref_vceq.c",
96        "ref_vcge.c",
97        "ref_vcle.c",
98        "ref_vcgt.c",
99        "ref_vclt.c",
100        "ref_vbsl.c",
101        "ref_vshl.c",
102        "ref_vdup_lane.c",
103        "ref_vrshrn_n.c",
104        "ref_vqdmull_lane.c",
105        "ref_vst1_lane.c",
106        "ref_vqshl.c",
107        "ref_vqshl_n.c",
108        "ref_vqrshrn_n.c",
109        "ref_vsub.c",
110        "ref_vqadd.c",
111        "ref_vabs.c",
112        "ref_vqabs.c",
113        "ref_vcombine.c",
114        "ref_vmax.c",
115        "ref_vmin.c",
116        "ref_vneg.c",
117        "ref_vqneg.c",
118        "ref_vmlal.c",
119        "ref_vmlal_lane.c",
120        "ref_vmlsl.c",
121        "ref_vmlsl_lane.c",
122        "ref_vmovl.c",
123        "ref_vmovn.c",
124        "ref_vmull.c",
125        "ref_vmull_lane.c",
126        "ref_vrev.c",
127        "ref_vrshl.c",
128        "ref_vshl_n.c",
129        "ref_vshr_n.c",
130        "ref_vsra_n.c",
131        "ref_vtrn.c",
132        "ref_vuzp.c",
133        "ref_vzip.c",
134        "ref_vreinterpret.c",
135        "ref_vqdmulh.c",
136        "ref_vqrdmulh.c",
137        "ref_vqrdmulh_lane.c",
138        "ref_vqrshl.c",
139        "ref_vaba.c",
140        "ref_vabal.c",
141        "ref_vabd.c",
142        "ref_vabdl.c",
143        "ref_vand.c",
144        "ref_vorr.c",
145        "ref_vorn.c",
146        "ref_veor.c",
147        "ref_vbic.c",
148        "ref_vcreate.c",
149        "ref_vldX_lane.c",
150        "ref_vmla.c",
151        "ref_vmls.c",
152        "ref_vmul.c",
153        "ref_vmul_lane.c",
154        "ref_vmul_n.c",
155        "ref_vmull_n.c",
156        "ref_vqdmulh_n.c",
157        "ref_vqdmull_n.c",
158        "ref_vqrdmulh_n.c",
159        "ref_vmla_lane.c",
160        "ref_vmls_lane.c",
161        "ref_vmla_n.c",
162        "ref_vmls_n.c",
163        "ref_vmlal_n.c",
164        "ref_vmlsl_n.c",
165        "ref_vqdmlal_n.c",
166        "ref_vqdmlsl_n.c",
167        "ref_vsri_n.c",
168        "ref_vsli_n.c",
169        "ref_vtst.c",
170        "ref_vaddhn.c",
171        "ref_vraddhn.c",
172        "ref_vaddl.c",
173        "ref_vaddw.c",
174        "ref_vhadd.c",
175        "ref_vrhadd.c",
176        "ref_vhsub.c",
177        "ref_vsubl.c",
178        "ref_vsubw.c",
179        "ref_vsubhn.c",
180        "ref_vrsubhn.c",
181        "ref_vmvn.c",
182        "ref_vqmovn.c",
183        "ref_vqmovun.c",
184        "ref_vrshr_n.c",
185        "ref_vrsra_n.c",
186        "ref_vshll_n.c",
187        "ref_vpaddl.c",
188        "ref_vpadd.c",
189        "ref_vpadal.c",
190        "ref_vqshlu_n.c",
191        "ref_vclz.c",
192        "ref_vcls.c",
193        "ref_vcnt.c",
194        "ref_vqshrn_n.c",
195        "ref_vpmax.c",
196        "ref_vpmin.c",
197        "ref_vqshrun_n.c",
198        "ref_vqrshrun_n.c",
199        "ref_vstX_lane.c",
200        "ref_vtbX.c",
201        "ref_vrecpe.c",
202        "ref_vrsqrte.c",
203        "ref_vcage.c",
204        "ref_vcagt.c",
205        "ref_vcale.c",
206        "ref_vcalt.c",
207        "ref_vrecps.c",
208        "ref_vrsqrts.c",
209        "ref_vcvt.c",
210    ],
211    stl: "none",
212
213    enabled: false,
214    arch: {
215        arm: {
216            neon: {
217                enabled: true,
218            },
219        },
220    },
221}
222
223cc_test {
224    name: "arm_neon_tests_arm",
225    defaults: ["arm_neon_tests_defaults"],
226
227    arch: {
228        arm: {
229            instruction_set: "arm",
230        },
231    },
232}
233
234cc_test {
235    name: "arm_neon_tests_thumb",
236    arch: {
237        arm: {
238            instruction_set: "thumb",
239        },
240    },
241}
242