11/* ========================== begin_copyright_notice ============================
22
3- Copyright (C) 2017-2021 Intel Corporation
3+ Copyright (C) 2017-2022 Intel Corporation
44
55SPDX-License-Identifier: MIT
66
77============================= end_copyright_notice ===========================*/
8-
98#ifndef IGA_MODELS_XE_HP_HPP
109#define IGA_MODELS_XE_HP_HPP
1110
@@ -205,14 +204,10 @@ namespace iga {
205204 {
206205 // UB,B,UW,W,UD,D <- UB,B,UW,W,UD,D
207206 {TYPE (Type::UB)|TYPE (Type::B)|TYPE (Type::UW)|TYPE (Type::W)|TYPE (Type::UD)|TYPE (Type::D),TYPE (Type::UB)|TYPE (Type::B)|TYPE (Type::UW)|TYPE (Type::W)|TYPE (Type::UD)|TYPE (Type::D)},
208- // F <- UB,B,UW,W,UD,D
209- {TYPE (Type::F),TYPE (Type::UB)|TYPE (Type::B)|TYPE (Type::UW)|TYPE (Type::W)|TYPE (Type::UD)|TYPE (Type::D)},
210207 // F <- F
211208 {TYPE (Type::F),TYPE (Type::F)},
212209 // HF <- HF
213210 {TYPE (Type::HF),TYPE (Type::HF)},
214- // HF <- UB,B,UW,W,UD,D
215- {TYPE (Type::HF),TYPE (Type::UB)|TYPE (Type::B)|TYPE (Type::UW)|TYPE (Type::W)|TYPE (Type::UD)|TYPE (Type::D)},
216211 // BF,F <- BF,F
217212 {TYPE (Type::BF)|TYPE (Type::F),TYPE (Type::BF)|TYPE (Type::F)},
218213 // DF <- DF
@@ -231,8 +226,6 @@ namespace iga {
231226 {
232227 // UB,B,UW,W,UD,D <- UB,B,UW,W,UD,D
233228 {TYPE (Type::UB)|TYPE (Type::B)|TYPE (Type::UW)|TYPE (Type::W)|TYPE (Type::UD)|TYPE (Type::D),TYPE (Type::UB)|TYPE (Type::B)|TYPE (Type::UW)|TYPE (Type::W)|TYPE (Type::UD)|TYPE (Type::D)},
234- // F <- UB,B,UW,W,UD,D
235- {TYPE (Type::F),TYPE (Type::UB)|TYPE (Type::B)|TYPE (Type::UW)|TYPE (Type::W)|TYPE (Type::UD)|TYPE (Type::D)},
236229 // F <- F
237230 {TYPE (Type::F),TYPE (Type::F)},
238231 // HF <- HF
@@ -258,10 +251,10 @@ namespace iga {
258251 {TYPE (Type::F),TYPE (Type::F)},
259252 // HF <- HF
260253 {TYPE (Type::HF),TYPE (Type::HF)},
261- // D <- D
262- {TYPE (Type::D),TYPE (Type::D)},
263- // W <- W
264- {TYPE (Type::W),TYPE (Type::W)}
254+ // UD, D <- UD, D
255+ {TYPE (Type::UD)| TYPE (Type:: D),TYPE (Type::UD)| TYPE (Type::D)},
256+ // UW, W <- UW, W
257+ {TYPE (Type::UW)| TYPE (Type:: W),TYPE (Type::UW)| TYPE (Type::W)}
265258 },
266259 OpSpec::Attr::SUPPORTS_FLAGMODIFIER|OpSpec::Attr::SUPPORTS_SATURATION|OpSpec::Attr::SUPPORTS_SRCMODS
267260 },
@@ -452,10 +445,10 @@ namespace iga {
452445 {TYPE (Type::HF),TYPE (Type::HF)},
453446 // BF,F <- BF,F
454447 {TYPE (Type::BF)|TYPE (Type::F),TYPE (Type::BF)|TYPE (Type::F)},
455- // W <- B
456- {TYPE (Type::W),TYPE (Type::B)},
457- // W, D <- W ,D
458- {TYPE (Type::W)|TYPE (Type::D),TYPE (Type::W )|TYPE (Type::D)},
448+ // UW, W <- UB, B
449+ {TYPE (Type::UW)| TYPE (Type:: W),TYPE (Type::UB)| TYPE (Type::B)},
450+ // UW,W,UD, D <- UW,W,UD ,D
451+ {TYPE (Type::UW)| TYPE (Type:: W)|TYPE (Type::UD)| TYPE (Type:: D),TYPE (Type::UW)| TYPE (Type::W)| TYPE (Type::UD )|TYPE (Type::D)},
459452 // DF <- DF
460453 {TYPE (Type::DF),TYPE (Type::DF)}
461454 },
@@ -471,7 +464,7 @@ namespace iga {
471464 // DF <- DF
472465 {TYPE (Type::DF),TYPE (Type::DF)}
473466 },
474- OpSpec::Attr::SUPPORTS_PREDICATION|OpSpec::Attr::SUPPORTS_FLAGMODIFIER|OpSpec::Attr::SUPPORTS_SATURATION|OpSpec::Attr:: SUPPORTS_SRCMODS
467+ OpSpec::Attr::SUPPORTS_PREDICATION|OpSpec::Attr::SUPPORTS_SRCMODS
475468 },
476469 {Op::INVALID, Platform::XE_HP, 0x0 , nullptr , nullptr , OpSpec::Format::INVALID, {}, OpSpec::Attr::NONE, },
477470 {Op::INVALID, Platform::XE_HP, 0x0 , nullptr , nullptr , OpSpec::Format::INVALID, {}, OpSpec::Attr::NONE, },
@@ -480,8 +473,12 @@ namespace iga {
480473 " Extended Math Function" ,
481474 OpSpec::Format::MATH_BINARY_REG_REGIMM,
482475 {
483- // F,HF <- F,HF
484- {TYPE (Type::F)|TYPE (Type::HF),TYPE (Type::F)|TYPE (Type::HF)}
476+ // F <- F
477+ {TYPE (Type::F),TYPE (Type::F)},
478+ // HF <- HF
479+ {TYPE (Type::HF),TYPE (Type::HF)},
480+ // DF <- DF
481+ {TYPE (Type::DF),TYPE (Type::DF)}
485482 },
486483 OpSpec::Attr::SUPPORTS_PREDICATION|OpSpec::Attr::SUPPORTS_SATURATION|OpSpec::Attr::SUPPORTS_SRCMODS
487484 },
@@ -528,14 +525,6 @@ namespace iga {
528525 " Move Indexed" ,
529526 OpSpec::Format::BASIC_BINARY_REG_REGIMM,
530527 {
531- // B <- B
532- {TYPE (Type::B),TYPE (Type::B)},
533- // UB <- UB
534- {TYPE (Type::UB),TYPE (Type::UB)},
535- // W <- W
536- {TYPE (Type::W),TYPE (Type::W)},
537- // UW <- UW
538- {TYPE (Type::UW),TYPE (Type::UW)},
539528 // D <- D
540529 {TYPE (Type::D),TYPE (Type::D)},
541530 // UD <- UD
@@ -558,6 +547,8 @@ namespace iga {
558547 {TYPE (Type::UW)|TYPE (Type::W),TYPE (Type::UW)|TYPE (Type::W)},
559548 // UD,D <- UW,W
560549 {TYPE (Type::UD)|TYPE (Type::D),TYPE (Type::UW)|TYPE (Type::W)},
550+ // UD,D <- UW,W,UD,D
551+ {TYPE (Type::UD)|TYPE (Type::D),TYPE (Type::UW)|TYPE (Type::W)|TYPE (Type::UD)|TYPE (Type::D)},
561552 // F <- F
562553 {TYPE (Type::F),TYPE (Type::F)},
563554 // HF <- HF
0 commit comments