| // Copyright 2023 Google LLC |
| // |
| // Licensed under the Apache License, Version 2.0 (the "License"); |
| // you may not use this file except in compliance with the License. |
| // You may obtain a copy of the License at |
| // |
| // http://www.apache.org/licenses/LICENSE-2.0 |
| // |
| // Unless required by applicable law or agreed to in writing, software |
| // distributed under the License is distributed on an "AS IS" BASIS, |
| // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| // See the License for the specific language governing permissions and |
| // limitations under the License. |
| |
| <%inherit file="base.tpl.cpp"/>\ |
| <%namespace name="tests_vv" file="opivv_test.tpl.cpp"/> |
| <%namespace name="tests_vf" file="opivf_test.tpl.cpp"/> |
| <% |
| import numpy as np |
| import vec_test_helpers |
| template_helper = vec_test_helpers.VecTemplateHelper(op, 32) |
| src2, src1, rs1 = template_helper.get_test_inputs(n=5) |
| ## Adjust test values to prohibit overflow or underflow |
| src2 = np.divide(src2, 2).astype(np.float32) |
| src1 = np.divide(src1, 2).astype(np.float32) |
| rs1 = np.divide(rs1, 2).astype(np.float32) |
| ref_vv = src2 - src1 |
| ref_vf = src2 - rs1 |
| %>\ |
| ${tests_vv.test_opivv(template_helper, src2, src1, ref_vv)} |
| ${tests_vf.test_opivf(template_helper, src2, rs1, ref_vf)} |