diff options
author | Stephen Hines <srhines@google.com> | 2015-04-01 18:49:24 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2015-04-01 18:49:26 +0000 |
commit | 3fa16bd6062e23bcdb82ed4dd965674792e6b761 (patch) | |
tree | 9348fc507292f7e8715d22d64ce5a32131b4f875 /lib/Target/Hexagon/HexagonIntrinsicsV3.td | |
parent | beed47390a60f6f0c77532b3d3f76bb47ef49423 (diff) | |
parent | ebe69fe11e48d322045d5949c83283927a0d790b (diff) | |
download | external_llvm-3fa16bd6062e23bcdb82ed4dd965674792e6b761.zip external_llvm-3fa16bd6062e23bcdb82ed4dd965674792e6b761.tar.gz external_llvm-3fa16bd6062e23bcdb82ed4dd965674792e6b761.tar.bz2 |
Merge "Update aosp/master LLVM for rebase to r230699."
Diffstat (limited to 'lib/Target/Hexagon/HexagonIntrinsicsV3.td')
-rw-r--r-- | lib/Target/Hexagon/HexagonIntrinsicsV3.td | 51 |
1 files changed, 14 insertions, 37 deletions
diff --git a/lib/Target/Hexagon/HexagonIntrinsicsV3.td b/lib/Target/Hexagon/HexagonIntrinsicsV3.td index 2a54e62..6152cb0 100644 --- a/lib/Target/Hexagon/HexagonIntrinsicsV3.td +++ b/lib/Target/Hexagon/HexagonIntrinsicsV3.td @@ -11,40 +11,17 @@ // //===----------------------------------------------------------------------===// - - - -// MTYPE / COMPLEX / Vector reduce complex multiply real or imaginary. -def Hexagon_M2_vrcmpys_s1: - di_MInst_disi_s1_sat <"vrcmpys", int_hexagon_M2_vrcmpys_s1>; -def Hexagon_M2_vrcmpys_acc_s1: - di_MInst_didisi_acc_s1_sat <"vrcmpys", int_hexagon_M2_vrcmpys_acc_s1>; -def Hexagon_M2_vrcmpys_s1rp: - si_MInst_disi_s1_rnd_sat <"vrcmpys", int_hexagon_M2_vrcmpys_s1rp>; - - - - -/******************************************************************** -* MTYPE/VB * -*********************************************************************/ - -// MTYPE / VB / Vector reduce add unsigned bytes. -def Hexagon_M2_vradduh: - si_MInst_didi <"vradduh", int_hexagon_M2_vradduh>; - - -/******************************************************************** -* ALU64/ALU * -*********************************************************************/ - -// ALU64 / ALU / Add. -def Hexagon_A2_addsp: - di_ALU64_sidi <"add", int_hexagon_A2_addsp>; -def Hexagon_A2_addpsat: - di_ALU64_didi <"add", int_hexagon_A2_addpsat>; - -def Hexagon_A2_maxp: - di_ALU64_didi <"max", int_hexagon_A2_maxp>; -def Hexagon_A2_maxup: - di_ALU64_didi <"maxu", int_hexagon_A2_maxup>; +// Vector reduce complex multiply real or imaginary +def : T_PR_pat <M2_vrcmpys_s1, int_hexagon_M2_vrcmpys_s1>; +def : T_PPR_pat<M2_vrcmpys_acc_s1, int_hexagon_M2_vrcmpys_acc_s1>; +def : T_PR_pat <M2_vrcmpys_s1rp, int_hexagon_M2_vrcmpys_s1rp>; + +// Vector reduce add unsigned halfwords +def : T_PP_pat<M2_vradduh, int_hexagon_M2_vradduh>; + +def: T_RP_pat<A2_addsp, int_hexagon_A2_addsp>; +def: T_PP_pat<A2_addpsat, int_hexagon_A2_addpsat>; +def: T_PP_pat<A2_minp, int_hexagon_A2_minp>; +def: T_PP_pat<A2_minup, int_hexagon_A2_minup>; +def: T_PP_pat<A2_maxp, int_hexagon_A2_maxp>; +def: T_PP_pat<A2_maxup, int_hexagon_A2_maxup>; |