//===- HexagonIntrinsicsV5.td - V5 Instruction intrinsics --*- tablegen -*-===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// //Rdd[+]=vrmpybsu(Rss,Rtt) //Rdd[+]=vrmpybuu(Rss,Rtt) let Predicates = [HasV5T] in { def : T_PP_pat ; def : T_PP_pat ; def : T_PP_pat ; def : T_PPP_pat ; def : T_PPP_pat ; //Rxx+=vdmpybsu(Rss,Rtt):sat def : T_PPP_pat ; // Vector multiply bytes // Rdd=vmpyb[s]u(Rs,Rt) def : T_RR_pat ; def : T_RR_pat ; // Rxx+=vmpyb[s]u(Rs,Rt) def : T_PRR_pat ; def : T_PRR_pat ; // Rd=vaddhub(Rss,Rtt):sat def : T_PP_pat ; } def : T_FF_pat; def : T_FF_pat; def : T_FF_pat; def : T_FF_pat; def : T_FF_pat; def : T_FF_pat; def : T_FF_pat; def : T_F_pat ; def : T_Q_QQ_pat; def : T_Q_QQ_pat; def : T_P_pat ; def : T_PI_pat ; def : T_PI_pat ; def : T_PI_pat ; def : T_PI_pat ; def : T_PI_pat ; def : T_FFF_pat ; def : T_FFF_pat ; def : T_FFF_pat ; def : T_FFF_pat ; def : T_FFFQ_pat ; // Compare floating-point value def : T_Q_FF_pat ; def : T_Q_FF_pat ; def : T_Q_FF_pat ; def : T_Q_FF_pat ; def : T_Q_DD_pat ; def : T_Q_DD_pat ; def : T_Q_DD_pat ; def : T_Q_DD_pat ; // Create floating-point value def : T_I_pat ; def : T_I_pat ; def : T_I_pat ; def : T_I_pat ; def : T_Q_DI_pat ; def : T_Q_FI_pat ; def : T_F_pat ; def : T_D_pat ; def : T_R_pat ; def : T_R_pat ; def : T_R_pat ; def : T_R_pat ; def : T_P_pat ; def : T_P_pat ; def : T_P_pat ; def : T_P_pat ; def : T_F_pat ; def : T_F_pat ; def : T_F_pat ; def : T_F_pat ; def : T_D_pat ; def : T_D_pat ; def : T_D_pat ; def : T_D_pat ; def : T_F_pat ; def : T_F_pat ; def : T_F_pat ; def : T_F_pat ; def : T_D_pat ; def : T_D_pat ; def : T_D_pat ; def : T_D_pat ;