1 /*========================== begin_copyright_notice ============================ 2 3 Copyright (C) 2017-2021 Intel Corporation 4 5 SPDX-License-Identifier: MIT 6 7 ============================= end_copyright_notice ===========================*/ 8 9 #ifndef _DEPENDENCIES_H_ 10 #define _DEPENDENCIES_H_ 11 12 #include "../G4_Opcode.h" 13 14 class Options; 15 16 namespace vISA { 17 18 class G4_INST; 19 20 enum DepType 21 { 22 NODEP = 0, 23 RAW, RAW_MEMORY, 24 WAR, WAR_MEMORY, 25 WAW, WAW_MEMORY, 26 CONTROL_FLOW_BARRIER, 27 SEND_BARRIER, 28 INDIRECT_ADDR_BARRIER, 29 MSG_BARRIER, 30 DEP_LABEL, 31 OPT_BARRIER, 32 DEPTYPE_MAX 33 }; 34 35 DepType getDepSend(G4_INST *curInst, G4_INST *liveInst, bool BTIIsRestrict); 36 37 DepType getDepScratchSend(G4_INST *curInst, G4_INST *liveInst); 38 39 DepType CheckBarrier(G4_INST *inst); 40 41 DepType getDepForOpnd(Gen4_Operand_Number cur, Gen4_Operand_Number liv); 42 } // namespace vISA 43 44 #endif 45