diff options
author | Sven van Haastregt <sven.vanhaastregt@arm.com> | 2018-04-27 10:37:04 +0000 |
---|---|---|
committer | Sven van Haastregt <sven.vanhaastregt@arm.com> | 2018-04-27 10:37:04 +0000 |
commit | 4700faa28ec2653fac95865bc493483b7a1c70ad (patch) | |
tree | 8f40700721b4f22870aa61c50b4fbb09a1183503 /clang/lib/Frontend/CompilerInvocation.cpp | |
parent | ffaa8a87811ad731c09b7ed533f28ce0fd9289ae (diff) | |
download | llvm-4700faa28ec2653fac95865bc493483b7a1c70ad.zip llvm-4700faa28ec2653fac95865bc493483b7a1c70ad.tar.gz llvm-4700faa28ec2653fac95865bc493483b7a1c70ad.tar.bz2 |
[OpenCL] Add separate read_only and write_only pipe IR types
SPIR-V encodes the read_only and write_only access qualifiers of pipes,
so separate LLVM IR types are required to target SPIR-V. Other backends
may also find this useful.
These new types are `opencl.pipe_ro_t` and `opencl.pipe_wo_t`, which
replace `opencl.pipe_t`.
This replaces __get_pipe_num_packets(...) and __get_pipe_max_packets(...)
which took a read_only pipe with separate versions for read_only and
write_only pipes, namely:
* __get_pipe_num_packets_ro(...)
* __get_pipe_num_packets_wo(...)
* __get_pipe_max_packets_ro(...)
* __get_pipe_max_packets_wo(...)
These separate versions exist to avoid needing a bitcast to one of the
two qualified pipe types.
Patch by Stuart Brady.
Differential Revision: https://reviews.llvm.org/D46015
llvm-svn: 331026
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions