Commit Graph

3390 Commits

Author SHA1 Message Date
openharmony_ci
bb744ef0e3
!16 更新spirv-tools版本号
Merge pull request !16 from 李西腾/master
2023-08-30 02:03:25 +00:00
lixiteng
31df70e86d 更改spirv-tools版本号
Signed-off-by: lixiteng <lixiteng@huawei.com>
2023-08-29 20:24:32 +08:00
openharmony_ci
127e31cabe
!11 升级spirv组件和其配套
Merge pull request !11 from wshikh/master
2023-08-23 10:04:02 +00:00
wangshi
7a1b05c6a4 modify component name
Signed-off-by: wangshi <wangshi@kaihong.com>
2023-08-22 15:38:54 +08:00
wangshi
35a1c8ba8e change name and version
Signed-off-by: wangshi <wangshi@kaihong.com>
2023-08-22 15:30:28 +08:00
openharmony_ci
b99406b5b4
!14 OAT.xml更新
Merge pull request !14 from zleoyu/sbom
2023-08-01 03:13:16 +00:00
zleoyu
8ecabf9deb OAT.xml upgrade
Signed-off-by: zleoyu <zhangleiyu1@huawei.com>
2023-07-31 18:06:09 +08:00
openharmony_ci
934f5b810e
!12 OAT.xml更新
Merge pull request !12 from zleoyu/sbom
2023-07-31 03:28:01 +00:00
zleoyu
6212512f37 OAT.xml upgrade
Signed-off-by: zleoyu <zhangleiyu1@huawei.com>
2023-07-29 20:07:27 +08:00
wangshi
a34bb15e3e add bundle.json
Signed-off-by: wangshi <wangshi@kaihong.com>
2023-07-26 18:11:20 +08:00
wangshi
dd5d32e964 change graphic_standard to graphic_2d
Signed-off-by: wangshi <wangshi@kaihong.com>
2023-07-14 10:36:39 +08:00
openharmony_ci
9a09cd7350
!10 【34】【third_party/spirv-tools】graphic_standard改为graphic_2d
Merge pull request !10 from zhangbirong/0630fix
2023-07-12 11:38:06 +00:00
wangshi
d0b0a7a52e format build.gn
Signed-off-by: wangshi <wangshi@kaihong.com>
2023-07-11 14:11:51 +08:00
wangshi
3423007ef2 format buildgn
Signed-off-by: wangshi <wangshi@kaihong.com>
2023-07-11 12:23:07 +08:00
wangshi
ba7e859c4e update to v2022.4
Signed-off-by: wangshi <wangshi@kaihong.com>
2023-07-11 10:14:11 +08:00
zhangbirong
5bb12a31a4 fix name
Signed-off-by: zhangbirong <zhangbirong@huawei.com>
Change-Id: Ib21e2cc70bee142c3f1103a4a62377769eadaf15
2023-07-07 15:27:02 +08:00
openharmony_ci
f129181165
!7 适配v2021.1版本
Merge pull request !7 from wshikh/master
2023-01-18 04:09:16 +00:00
wangshi
ba4f3d32d0 根据门禁要求格式化build.gn
Signed-off-by: wangshi <wangshi@kaihong.com>
2023-01-16 09:30:32 +08:00
wangshi
437ca1670e 根据门禁要求格式化build.gn
Signed-off-by: wangshi <wangshi@kaihong.com>
2023-01-16 08:58:59 +08:00
wangshi
4501b12b03 适配v2021.1版本
Signed-off-by: wangshi <wangshi@kaihong.com>
2023-01-13 15:08:35 +08:00
wangshi
5c2f5db5c5 适配v2021.1版本
Signed-off-by: wangshi <wangshi@kaihong.com>
2023-01-13 14:52:09 +08:00
openharmony_ci
8a7727e840
!4 移植spirv-tools,适配vkgl测试套件的编译
Merge pull request !4 from wshikh/master
2022-11-16 08:49:57 +00:00
openharmony_ci
49468937e8
!5 添加 OAT.xml、README.OpenSource
Merge pull request !5 from zleoyu/OpenSource1114
2022-11-16 07:48:52 +00:00
zleoyu
f0c2dd4b79 Addition OAT.xml and README.OpenSource
Signed-off-by: zleoyu <zhangleiyu1@huawei.com>
2022-11-16 03:03:18 +00:00
wangshi
73accd27fe 移植spirv-tools,适配vkgl测试套件的编译
Signed-off-by: wangshi <wangshi@kaihong.com>
2022-11-15 15:44:19 +08:00
Diego Novillo
b930e734ea Update CHANGES 2022-05-31 14:48:51 -04:00
Diego Novillo
a138aa4a47 Roll external/spirv-headers/ b765c355f..5a1218669 (1 commit)
b765c355f4...5a12186692

$ git log b765c355f..5a1218669 --date=short --no-merges --format='%ad %ae %s'
2022-05-20 waprave Implemented Beef language header generation

Created with:
  roll-dep external/spirv-headers
2022-05-31 14:40:22 -04:00
Diego Novillo
13e296b316 Roll external/re2/ 0c5616df9..5723bb895 (6 commits)
0c5616df9c...5723bb8950

$ git log 0c5616df9..5723bb895 --date=short --no-merges --format='%ad %ae %s'
2022-05-09 junyer Add GCC 12 to the build matrix.
2022-04-11 junyer Switch to `cxx_std_11` as per best current practice.
2022-04-08 junyer Mea culpa. The `DCHECK` needs to be an `if`.
2022-04-08 junyer Use `size_t` to stop MSVC griping about conversion.
2022-04-08 junyer `#include` `<cmath>` instead of `<math.h>`.
2022-04-06 junyer Prune `PrefilterTree` edges instead of nodes.

Created with:
  roll-dep external/re2
2022-05-31 14:40:20 -04:00
Diego Novillo
e97dfb6626 Roll external/googletest/ 25dcdc7e8..548b13dc3 (38 commits)
25dcdc7e8b...548b13dc3c

$ git log 25dcdc7e8..548b13dc3 --date=short --no-merges --format='%ad %ae %s'
2022-05-31 absl-team Fix internal files
2022-05-30 jacobsa gmock-spec-builders: remove the name for an unused parameter.
2022-05-27 jacobsa gmock-spec-builders: add support for non-moveable types.
2022-05-27 elixir Clarify that `this->` is needed to access members of type-parameterized tests.
2022-05-27 jacobsa gmock-actions: properly support non-moveable results in `is_callable_r`.
2022-05-26 jacobsa gmock-spec-builders: move a method to the header.
2022-05-25 absl-team Update GoogleTest documentation's spelling of "GoogleTest".
2022-05-24 absl-team Clarify the pitfalls of EXPECT_THAT and highlight it's best practices
2022-05-17 dinor gmock-internal-utils.cc: Avoid implicit conversion from int to char Fixes #3832
2022-05-12 jacobsa gmock-actions: add support for move-only values to Return.
2022-05-12 absl-team Add clarifying comments about when to use EXPECT_NONFATAL_FAILURE vs. EXPECT_FATAL_FAILURE.
2022-05-11 jacobsa gmock-actions: provide a const reference when converting in ReturnAction.
2022-05-10 absl-team Do a consistent way of searching for a temporary directory.
2022-05-10 jacobsa gmock-actions: simplify Return and add better documentation.
2022-05-10 jacobsa gmock-actions: make OnceAction public.
2022-05-10 absl-team Fixup some missing overrides in googletest.
2022-05-03 absl-team Fix example of DescribeMatcher to properly support negation.
2022-05-02 absl-team Use TEST_TMPDIR on MacOS as well if available.
2022-05-02 jacobsa gmock-actions: remove a no-longer-necessary friend declaration.
2022-05-02 jacobsa gmock-actions: support ByMove in a specialization of ReturnAction.
2022-04-30 ayush854032 Fix typo in the test name of `NormalizeTest`
2022-04-28 absl-team Rewrite "Testing a Certain Property of an Object" as "Defining a Custom Matcher Class", and fix the code examples.
2022-04-27 jacobsa gmock-actions: improve comments and tests for the implicit cast in Return.
2022-04-26 jacobsa Support move-only and &&-qualified actions in WithArgs.
2022-04-26 dmauro Use RE2 for the regex implementation when building with Bazel and using Abseil
2022-04-26 absl-team Generalize gmock-matchers_test to handle is_gtest_matcher-style matchers, too.
2022-04-26 jacobsa Support move-only and &&-qualified actions in DoAll.
2022-04-22 dmauro Remove the legacy internal GTEST_DISALLOW_* macros
2022-04-21 dmauro Eliminate the legacy GTEST_COMPILE_ASSERT_ macro
2022-04-20 mhommey Always initialize fields in MatcherBase constructors
2022-04-13 jacobsa Document two surprises in `DoAllAction::NonFinalType`.
2022-04-13 absl-team Replace infinite recursion call (intentionally invoking undefined behavior to indicate unreachability) with explicit unreachability marker.
2022-04-08 absl-team Add support for move-only and &&-qualified actions in WillOnce.
2022-04-06 52797899+MR-A0101 Removing commas.
2022-04-06 dmauro Clarify what live-at-head actually means
2022-04-04 absl-team Trying to make it more clear: this is probably not about mock classes, but about mocked classes
2022-04-04 absl-team gmock: improve SFINAE for actions involving arguments.
2022-04-04 absl-team Use ResultOf()'s result_description when explaining match result.

Created with:
  roll-dep external/googletest
2022-05-31 14:40:17 -04:00
Nicolas Capens
130a05d2e3
Fold multiply and subtraction into FMA with negation (#4808)
This change adds a folding rule which transforms x * y - a and a - x * y
into FMA(x, y, -a) and FMA(-x, y, a), respectively.

While the SPIR-V instruction count remains the same, target instruction
sets typically feature FMA instruction variants that can negate an
operand. Also this transformation may unlock further optimizations which
eliminate the negation.

(Google bug: b/226145988)
2022-05-31 12:03:56 -04:00
Spencer Fricke
82d91083cb
spirv-val: Add PerVertexKHR (#4807) 2022-05-26 13:11:05 -04:00
Steven Perron
088cb1a5c8
Add more folding for composite instructions (#4802)
* Add move folding for composite instructions

Fold chains of insert into construct

If a chain of OpCompositeInsert instruction write to every element of a
composite object, then we can replace it with an OpCompositeConstruct.

Fold a construct fed by extracts to a single extract

We already fold an OpCompositeConstruct when it is simlpy reconstructing
an object that was decomposed by a series of OpCompositeExtract
instructions.  However, we do not do that if that object is an element
of a larger object.

I have updated the rule, so that if the original object is a an element
of a larger object, then the OpCompositeConstruct is replaced with a
single OpCompositeExtract from the larger object.

Fixes #4371.
2022-05-26 10:29:02 -04:00
stu-s
c267127846
Add SPV_KHR_fragment_shader_barycentric support (#4805)
* Add SPV_KHR_fragment_shader_barycentric support
2022-05-25 09:20:39 -04:00
Ryan Harrison
98340ec500
Add warning about spurious 'git cl upload' messages (#4800)
Fixes #4186
2022-05-11 15:17:21 -04:00
Steven Perron
f74b85853c
Handle 64-bit integers in local access chain convert (#4798)
* Handle 64-bit integers in local access chain convert

The local access chain convert pass does on run on module that have
64-bit integers, even if they have nothing to to with access chains.
This is very limiting because other passes rely on the access chains
being removed. So this commit will add this functionality to the pass.
2022-05-10 17:02:14 +00:00
Daniele Vettorel
f7a6e3b9d5
Handle chains of OpAccessChain in replacing variable index access for flattened resources. (#4797) 2022-05-10 11:41:43 -04:00
Jaebaek Seo
ad3514b732
spirv-opt: add pass for interface variable scalar replacement (#4779)
Replace shader's stage variables whose types are array or matrix
with scalars/vectors.
For example,
```
Before:
  %foo = OpVariable %_ptr_Output__arr_v2float_uint_4 Output
After:
  %foo = OpVariable %_ptr_Output_v2float Output
  %foo_0 = OpVariable %_ptr_Output_v2float Output
  %foo_1 = OpVariable %_ptr_Output_v2float Output
  %foo_2 = OpVariable %_ptr_Output_v2float Output
```
2022-05-09 14:04:52 -04:00
Rayan Hatout
ffc8f2d455
Remove deprecated flags from spirv-opt help message (#4788)
* Remove deprecated `--decompose-initialized-variables` from spirv-opt help message

* Remove deprecated --strip-atomic-counter-memory flag from spirv-opt help message
2022-05-06 17:10:14 +00:00
JiaoluAMD
c11ea09652
spirv-opt : Add FixFuncCallArgumentsPass (#4775)
spirv validation require OpFunctionCall with memory object, usually this
is non issue as all the functions are inlined.
This pass deal with some case for
DontInline function. accesschain input operand would be replaced new
created variable
2022-05-06 10:39:26 -04:00
Daniel Koch
9e377b0f97
spirv-val: Add CullMaskKHR support (#4792)
Co-authored-by: sfricke-samsung <s.fricke@samsung.com>
2022-05-06 07:32:56 -04:00
Kévin Petit
7014be600c
Add support for SPV_KHR_subgroup_rotate (#4786)
- Add assembler/disassembler support
- Add validator support

Signed-off-by: Kevin Petit <kevin.petit@arm.com>
Change-Id: Iffcedd5d5e636a0e128a5906ffe634dd85727de1
2022-05-05 08:58:05 -04:00
JiaoluAMD
2c7fb9707b
Handle dontinline function in spread-volatile-semantics (#4776)
Handle function calls in spread-volatile-semantics
2022-05-04 10:52:58 -04:00
Steven Perron
58dc37ea6a
Add SpvBuiltInCullMaskKHR to a switch (#4790)
Add SpvBuiltInCullMaskKHR to a switch so spirv-tools can compile with
the latest headers.
2022-05-03 14:39:51 -04:00
Steven Perron
1295dca8e2
Reapply "Add folding rule to generate Fma instructions (#4783)" (#4789)
This reverts commit 671f6e633f.

PR #4783 was reverted because it caused OpenCL CTS failures for clvk.
The was in clspv, which was not adding the no contract decoration when
it was required.  This has been fixed in
https://github.com/google/clspv/pull/845.  We can now reapply #4783.
2022-05-03 10:20:23 -04:00
Karol Herbst
edaf51038b
linker: Recalculate interface variables (#4784)
* linker: Recalculate interface variables

By resolving extern symbols Entry Points might access variables they
hadn't declared before.

* test/linker: add test to verify linked spir-vs importing functions validate

Without the fix Validate will complain about:

"ERROR: 9: Interface variable id <5> is used by entry point 'bar' id <1>, but is not listed as an interface\n  %5 = OpVariable %_ptr_Input_v3uint Input\n"
2022-05-03 13:23:02 +00:00
sindney
46492aa45a
spirv-opt: skips if_conversion when dontflatten is set (#4770) 2022-04-28 19:26:02 +00:00
Daniele Vettorel
671f6e633f
Revert "Add folding rule to generate Fma instructions (#4783)" (#4785)
This reverts commit 2b2b0282af.
2022-04-20 10:55:20 -04:00
Steven Perron
2b2b0282af
Add folding rule to generate Fma instructions (#4783)
Adding Fma instruction can speed up the code.  This was requested by
swiftshader, so they do not have to do this analysis themselves.  It can
also help reduce the code size, and the work the ICD compilers have to
do.
2022-04-19 11:25:07 -04:00
Chad Versace
cb96abbf7a
Fix CMake for librt (#4773)
In the installed file
/usr/lib64/cmake/SPIRV-Tools/SPIRV-ToolsTarget.cmake, occurences of
librt in the INTERFACE_LINK_LIBRARIES property are incorrect.  The
property contains the absolute path to librt. In most situations, this
produces no problem. But when building in a sysroot, which is commonly
done when cross-compiling, the absolute path breaks dependent projects.

For example, when building spirv-tools using the Chrome OS SDK, and
targeting the board 'volteer', where the build sysroot is
'/build/volteer', the file includes this line
    INTERFACE_LINK_LIBRARIES "/build/volteer/usr/lib64/librt.so"
when it should instead say
    INTERFACE_LINK_LIBRARIES "rt"

The CMake documentation agrees [1]:
    Note that it is not advisable to populate the
    INTERFACE_LINK_LIBRARIES of a target with absolute paths to
    dependencies. That would hard-code into installed packages the
    library file paths for dependencies as found on the machine the
    package was made on.

[1] https://cmake.org/cmake/help/latest/prop_tgt/INTERFACE_LINK_LIBRARIES.html
2022-04-14 09:04:12 -04:00
Steven Perron
898ba64d24
Use cmake 3.23 on Windows. (#4782) 2022-04-13 13:56:19 -04:00