rename AVX512_4VNNI to tAVX512_4VNNIW

This commit is contained in:
MITSUNARI Shigeo 2016-11-27 10:11:06 +09:00
parent cc7fa5086f
commit 3781980593
6 changed files with 9 additions and 7 deletions

View file

@ -1,5 +1,5 @@
Xbyak 5.30 ; JIT assembler for x86(IA32), x64(AMD64, x86-64) by C++
Xbyak 5.31 ; JIT assembler for x86(IA32), x64(AMD64, x86-64) by C++
=============
Abstract
@ -323,6 +323,7 @@ The header files under xbyak/ are independent of cybozulib.
History
-------------
* 2016/Nov/27 ver 5.31 rename AVX512_4VNNI to AVX512_4VNNIW
* 2016/Nov/27 ver 5.30 add AVX512_4VNNI, AVX512_4FMAPS instructions(thanks to rsdubtso)
* 2016/Nov/26 ver 5.20 add detection of AVX512_4VNNI and AVX512_4FMAPS(thanks to rsdubtso)
* 2016/Nov/20 ver 5.11 lost vptest for ymm(thanks to gregory38)

View file

@ -1,5 +1,5 @@
C++用x86(IA-32), x64(AMD64, x86-64) JITアセンブラ Xbyak 5.20
C++用x86(IA-32), x64(AMD64, x86-64) JITアセンブラ Xbyak 5.31
-----------------------------------------------------------------------------
◎概要
@ -333,6 +333,7 @@ cybozulibは単体テストでのみ利用されていて、xbyak/ディレク
-----------------------------------------------------------------------------
◎履歴
2016/11/27 ver 5.31 AVX512_4VNNIをAVX512_4VNNIWに変更
2016/11/27 ver 5.30 AVX512_4VNNI, AVX512_4FMAPS命令の追加(thanks to rsdubtso)
2016/11/26 ver 5.20 AVX512_4VNNIとAVX512_4FMAPSの判定追加(thanks to rsdubtso)
2016/11/20 ver 5.11 何故か消えていたvptest for ymm追加(thanks to gregory38)

View file

@ -64,7 +64,7 @@ void putCPUinfo()
{ Cpu::tAVX512BW, "avx512bw" },
{ Cpu::tAVX512VL, "avx512vl" },
{ Cpu::tAVX512VBMI, "avx512vbmi" },
{ Cpu::tAVX512_4VNNI, "avx512_4vnni" },
{ Cpu::tAVX512_4VNNIW, "avx512_4vnniw" },
{ Cpu::tAVX512_4FMAPS, "avx512_4fmaps" },
};
for (size_t i = 0; i < NUM_OF_ARRAY(tbl); i++) {

View file

@ -105,7 +105,7 @@ namespace Xbyak {
enum {
DEFAULT_MAX_CODE_SIZE = 4096,
VERSION = 0x5300 /* 0xABCD = A.BC(D) */
VERSION = 0x5310 /* 0xABCD = A.BC(D) */
};
#ifndef MIE_INTEGER_TYPE_DEFINED

View file

@ -1,4 +1,4 @@
const char *getVersionString() const { return "5.30"; }
const char *getVersionString() const { return "5.31"; }
void adc(const Operand& op, uint32 imm) { opRM_I(op, imm, 0x10, 2); }
void adc(const Operand& op1, const Operand& op2) { opRM_RM(op1, op2, 0x10); }
void adcx(const Reg32e& reg, const Operand& op) { opGen(reg, op, 0xF6, 0x66, isREG32_REG32orMEM, NONE, 0x38); }

View file

@ -176,7 +176,7 @@ public:
static const Type tAVX512BW = uint64(1) << 41;
static const Type tAVX512VL = uint64(1) << 42;
static const Type tAVX512VBMI = uint64(1) << 43;
static const Type tAVX512_4VNNI = uint64(1) << 44;
static const Type tAVX512_4VNNIW = uint64(1) << 44;
static const Type tAVX512_4FMAPS = uint64(1) << 45;
Cpu()
@ -238,7 +238,7 @@ public:
if (data[1] & (1U << 30)) type_ |= tAVX512BW;
if (data[1] & (1U << 31)) type_ |= tAVX512VL;
if (data[2] & (1U << 1)) type_ |= tAVX512VBMI;
if (data[3] & (1U << 2)) type_ |= tAVX512_4VNNI;
if (data[3] & (1U << 2)) type_ |= tAVX512_4VNNIW;
if (data[3] & (1U << 3)) type_ |= tAVX512_4FMAPS;
}
}