Skip to content

Commit

Permalink
i#1312 AVX-512 support: Fix API comment and doxygen links. (#3501)
Browse files Browse the repository at this point in the history
Amends commit 851a961 with doxygen links and fixes a documentation bug
for MCXT_NUM_OPMASK_SLOTS.

Issue: #1312
  • Loading branch information
Hendrik Greving committed Apr 22, 2019
1 parent 0459816 commit 65e1cd2
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 8 deletions.
6 changes: 3 additions & 3 deletions api/docs/release.dox
Original file line number Diff line number Diff line change
Expand Up @@ -145,9 +145,6 @@ compatibility changes:
expression and code relying on this needs to be rewritten.
DynamoRIO_NUM_SIMD_SLOTS_COMPATIBILITY is set automatically if clients target
version 7.1.0 or earlier.
- Added the type dr_zmm_t.
- Added the type dr_opmask_t.
- Added the define #MCXT_NUM_OPMASK_SLOTS for the number of AVX-512 OpMask registers.

Further non-compatibility-affecting changes include:

Expand All @@ -156,6 +153,9 @@ Further non-compatibility-affecting changes include:
- Added new fields to #dr_os_version_info_t which contain the build number,
edition, and Windows 10 release identifier.
- Added the function instr_is_xsave().
- Added the type #dr_zmm_t.
- Added the type #dr_opmask_t.
- Added the define #MCXT_NUM_OPMASK_SLOTS for the number of AVX-512 OpMask registers.

**************************************************
<hr>
Expand Down
17 changes: 12 additions & 5 deletions core/lib/globals_shared.h
Original file line number Diff line number Diff line change
Expand Up @@ -1838,9 +1838,12 @@ typedef union _dr_zmm_t {
reg_t reg[IF_X64_ELSE(8, 16)]; /**< Representation as 8 or 16 registers. */
} dr_zmm_t;

/* OpMask (k-)register. The register may be only 16 bits on systems w/o AVX512BW, but
* can be up to MAX_KL = 64 bits.
/** AVX-512 OpMask (k-)register. */
#ifdef AVOID_API_EXPORT
/* The register may be only 16 bits wide on systems without AVX512BW, but can be up to
* MAX_KL = 64 bits.
*/
#endif
typedef uint64 dr_opmask_t;

#if defined(AARCHXX)
Expand Down Expand Up @@ -1878,7 +1881,10 @@ typedef union _dr_simd_t {
# define PRE_SIMD_PADDING \
0 /**< Bytes of padding before xmm/ymm dr_mcontext_t slots \
*/
# define MCXT_NUM_OPMASK_SLOTS 0 /**< No simd masks */
# define MCXT_NUM_OPMASK_SLOTS \
0 /**< Number of 16-64-bit OpMask Kn slots in dr_mcontext_t, \
* if architecture supports. \
*/

#elif defined(X86)

Expand Down Expand Up @@ -1912,8 +1918,9 @@ typedef union _dr_simd_t {
# define PRE_XMM_PADDING \
24 /**< Bytes of padding before xmm/ymm dr_mcontext_t slots */
# endif
# define MCXT_NUM_OPMASK_SLOTS \
8 /**< Number of 16-64-bit OpMask Kn slots in dr_mcontext_t \
# define MCXT_NUM_OPMASK_SLOTS \
8 /**< Number of 16-64-bit OpMask Kn slots in dr_mcontext_t, \
* if architecture supports. \
*/
#else
# error NYI
Expand Down

0 comments on commit 65e1cd2

Please sign in to comment.