Skip to content

[SYCL][ESIMD] Make typenames and constants consistent with SYCL API style. #3850

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Jun 2, 2021

Conversation

kbobrovs
Copy link
Contributor

@kbobrovs kbobrovs commented May 31, 2021

Also add some doc comments and a test, improve existing tests.
Main changes:

  • replaced GENX_NOSAT/GENX_SAT with enum class saturation
  • replaced enum ChannelMaskType with enum class rgba_channel_mask
  • added enum class rgba_channel
  • replaced EsimdAtomicOpType with enum class atomic_op
  • replaced EsimdSbarrierType with enum class split_barrier_action

All existing types remain, but deprecated.

Signed-off-by: kbobrovs Konstantin.S.Bobrovsky@intel.com

…tyle.

Also add some doc comments and a test, improve existing tests.

Signed-off-by: kbobrovs <Konstantin.S.Bobrovsky@intel.com>
@kbobrovs kbobrovs requested a review from DenisBakhvalov as a code owner May 31, 2021 06:52
@kbobrovs kbobrovs requested a review from rolandschulz May 31, 2021 06:52
Copy link
Contributor

@DenisBakhvalov DenisBakhvalov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

API changes LGTM.

@@ -532,10 +522,16 @@ ESIMD_NODEBUG ESIMD_INLINE
return __esimd_flat_atomic0<Op, T, n, L1H, L3H>(vAddr.data(), pred.data());
}

namespace detail {
static inline constexpr atomic_op convert(EsimdAtomicOpType Op) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can't find where this code is used.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

right, remnant from previous version - will clean-up.

#define __ESIMD_QUOTE1(m) #m
#define __ESIMD_QUOTE(m) __ESIMD_QUOTE1(m)
#define __ESIMD_NS_QUOTED __ESIMD_QUOTE(__ESIMD_NS)
#define __ESIMD_DEPRECATED(new_api) \
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: should we undef those defines as well.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think those can be useful in other headers.
__ESIMD_NS should actually replace __SEIEE according to prior reviews.

@kbobrovs kbobrovs requested a review from DenisBakhvalov June 2, 2021 03:53
@kbobrovs kbobrovs merged commit e8d8b3a into intel:sycl Jun 2, 2021
alexbatashev pushed a commit to alexbatashev/llvm that referenced this pull request Jun 4, 2021
* sycl: (320 commits)
  [SYCL] Silence a "local variable is initialized but not referenced" warning; NFC (intel#3870)
  [SYCL] Improve SYCL_DEVICE_ALLOWLIST (intel#3826)
  [SPIR-V] Change return value of mapType function (intel#3871)
  [SYCL] Fix post-commit failure in handler.hpp from unused-parameters. (intel#3874)
  [Driver][SYCL] Do not imply defaultlib msvcrt for Linux based driver on Windows (intel#3827)
  [SYCL] Unique stable name rebase (intel#3835)
  [SYCL] Align behavior of empty command groups with SYCL2020 (intel#3822)
  [SYCL][ESIMD] Make typenames and constants consistent with SYCL API style. (intel#3850)
  [SYCL] Allow __failed_assertion to support libstdc++-11 (intel#3774)
  [SYCL] Refactor stream class handing implementation (intel#3646)
  [SYCL] Fix syntax error introduced in intel#3401 (intel#3861)
  [SYCL] SYCL 2020 sub_group algorithms (intel#3786)
  [Buildbot][NFC] Add option to use LLD as linker (intel#3866)
  Revert "Emit correct location lists with basic block sections."
  [SPIRITTAnnotations] Fix debug info for ITT calls. (intel#3829)
  [SYCL][Doc] Fix build of Sphinx docs (intel#3863)
  [SYCL][FPGA][NFC] Tidy up intel_fpga_reg codegen test (intel#3810)
  [CODEOWNERS] Fix SPIRITTAnnnotations tests ownership (intel#3859)
  [SYCL][ESIMD] Host-compile simd.cpp test, fix errors & warnings. (intel#3846)
  [SYCL] Store pointers to memory allocations instead of iterators (intel#3860)
  ...
@kbobrovs kbobrovs deleted the esimd_rename_types branch October 4, 2021 18:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants