Multiple ORed values in CONSTANT_CLASSES.to_string
This is mostly implemented for clGetKernelArgInfo called with
CL_KERNEL_ARG_TYPE_QUALIFIER
. In this case, the value
can be a bitwise or of different type qualifiers (e.g. const
and volatile
), so we need to go through all of them.
Not sure this is the right fix, since it could be a change in behavior for anyone checking the output. I ran it with the concurrency checker through pytential
and it didn't crash anything.
Merge request reports
Activity
- Resolved by Andreas Klöckner
Thanks for working on this!
There are some sets of constants for which this is wrong, because they're not bitfields, or only partially bit-fields. As such, I'd prefer if this were opt-in, e.g. by having a
kernel_arg_type_qualifier._is_bitfield = True
. Note that this should not be enabled if the field is only partly a bitfield.
added 1 commit
- 3011e292 - constants: only bitfields can have extra values
added 1 commit
- 0b598cb5 - Remove CL version query for BITFIELD_CONSTANT_CLASSES
added 1 commit
- e8871f73 - Use | as separator when stringifying bitfields
FYI changed the bitfield separator: e8871f73
enabled an automatic merge when the pipeline for e8871f73 succeeds
mentioned in commit 7d96cc77