1234285Sdim//=- HexagonIntrinsicsV3.td - Target Description for Hexagon -*- tablegen -*-=// 2234285Sdim// 3234285Sdim// The LLVM Compiler Infrastructure 4234285Sdim// 5234285Sdim// This file is distributed under the University of Illinois Open Source 6234285Sdim// License. See LICENSE.TXT for details. 7234285Sdim// 8234285Sdim//===----------------------------------------------------------------------===// 9234285Sdim// 10234285Sdim// This file describes the Hexagon V3 Compiler Intrinsics in TableGen format. 11234285Sdim// 12234285Sdim//===----------------------------------------------------------------------===// 13234285Sdim 14234285Sdim 15234285Sdim 16234285Sdim 17234285Sdim// MTYPE / COMPLEX / Vector reduce complex multiply real or imaginary. 18234285Sdimdef Hexagon_M2_vrcmpys_s1: 19234285Sdim di_MInst_disi_s1_sat <"vrcmpys", int_hexagon_M2_vrcmpys_s1>; 20234285Sdimdef Hexagon_M2_vrcmpys_acc_s1: 21234285Sdim di_MInst_didisi_acc_s1_sat <"vrcmpys", int_hexagon_M2_vrcmpys_acc_s1>; 22234285Sdimdef Hexagon_M2_vrcmpys_s1rp: 23234285Sdim si_MInst_disi_s1_rnd_sat <"vrcmpys", int_hexagon_M2_vrcmpys_s1rp>; 24234285Sdim 25234285Sdim 26234285Sdim 27234285Sdim 28234285Sdim/******************************************************************** 29234285Sdim* MTYPE/VB * 30234285Sdim*********************************************************************/ 31234285Sdim 32234285Sdim// MTYPE / VB / Vector reduce add unsigned bytes. 33234285Sdimdef Hexagon_M2_vradduh: 34234285Sdim si_MInst_didi <"vradduh", int_hexagon_M2_vradduh>; 35234285Sdim 36234285Sdim 37234285Sdim/******************************************************************** 38234285Sdim* ALU64/ALU * 39234285Sdim*********************************************************************/ 40234285Sdim 41234285Sdim// ALU64 / ALU / Add. 42234285Sdimdef Hexagon_A2_addsp: 43234285Sdim di_ALU64_sidi <"add", int_hexagon_A2_addsp>; 44234285Sdimdef Hexagon_A2_addpsat: 45234285Sdim di_ALU64_didi <"add", int_hexagon_A2_addpsat>; 46234285Sdim 47234285Sdimdef Hexagon_A2_maxp: 48234285Sdim di_ALU64_didi <"max", int_hexagon_A2_maxp>; 49234285Sdimdef Hexagon_A2_maxup: 50234285Sdim di_ALU64_didi <"maxu", int_hexagon_A2_maxup>; 51