@@ -139,6 +139,12 @@ TARGET_BUILTIN(__builtin_ia32_t2rpntlvwz1rs_internal, "vUsUsUsV256i*V256i*vC*z",
139139TARGET_BUILTIN(__builtin_ia32_t2rpntlvwz1t1_internal, " vUsUsUsV256i*V256i*vC*z" , " n" , " amx-transpose" )
140140TARGET_BUILTIN(__builtin_ia32_t2rpntlvwz1rst1_internal, " vUsUsUsV256i*V256i*vC*z" , " n" , " amx-movrs,amx-transpose" )
141141TARGET_BUILTIN(__builtin_ia32_ttransposed_internal, " V256iUsUsV256i" , " n" , " amx-transpose" )
142+ TARGET_BUILTIN(__builtin_ia32_ttdpbf16ps_internal, " V256iUsUsUsV256iV256iV256i" , " n" , " amx-bf16,amx-transpose" )
143+ TARGET_BUILTIN(__builtin_ia32_ttdpfp16ps_internal, " V256iUsUsUsV256iV256iV256i" , " n" , " amx-fp16,amx-transpose" )
144+ TARGET_BUILTIN(__builtin_ia32_ttcmmimfp16ps_internal, " V256iUsUsUsV256iV256iV256i" , " n" , " amx-complex,amx-transpose" )
145+ TARGET_BUILTIN(__builtin_ia32_ttcmmrlfp16ps_internal, " V256iUsUsUsV256iV256iV256i" , " n" , " amx-complex,amx-transpose" )
146+ TARGET_BUILTIN(__builtin_ia32_tconjtcmmimfp16ps_internal, " V256iUsUsUsV256iV256iV256i" , " n" , " amx-complex,amx-transpose" )
147+ TARGET_BUILTIN(__builtin_ia32_tconjtfp16_internal, " V256iUsUsV256i" , " n" , " amx-complex,amx-transpose" )
142148
143149TARGET_BUILTIN(__builtin_ia32_tcvtrowd2ps_internal, " V16fUsUsV256iUi" , " n" , " amx-avx512,avx10.2-512" )
144150TARGET_BUILTIN(__builtin_ia32_tcvtrowps2pbf16h_internal, " V32yUsUsV256iUi" , " n" , " amx-avx512,avx10.2-512" )
@@ -185,6 +191,12 @@ TARGET_BUILTIN(__builtin_ia32_t2rpntlvwz0t1, "vIUcvC*z", "n","amx-transpose")
185191TARGET_BUILTIN(__builtin_ia32_t2rpntlvwz1, " vIUcvC*z" , " n" , " amx-transpose" )
186192TARGET_BUILTIN(__builtin_ia32_t2rpntlvwz1t1, " vIUcvC*z" , " n" ," amx-transpose" )
187193TARGET_BUILTIN(__builtin_ia32_ttransposed, " vIUcIUc" , " n" , " amx-transpose" )
194+ TARGET_BUILTIN(__builtin_ia32_ttdpbf16ps, " vIUcIUcIUc" , " n" , " amx-bf16,amx-transpose" )
195+ TARGET_BUILTIN(__builtin_ia32_ttdpfp16ps, " vIUcIUcIUc" , " n" , " amx-fp16,amx-transpose" )
196+ TARGET_BUILTIN(__builtin_ia32_ttcmmimfp16ps, " vIUcIUcIUc" , " n" , " amx-complex,amx-transpose" )
197+ TARGET_BUILTIN(__builtin_ia32_ttcmmrlfp16ps, " vIUcIUcIUc" , " n" , " amx-complex,amx-transpose" )
198+ TARGET_BUILTIN(__builtin_ia32_tconjtcmmimfp16ps, " vIUcIUcIUc" , " n" , " amx-complex,amx-transpose" )
199+ TARGET_BUILTIN(__builtin_ia32_tconjtfp16, " vIUcIUc" , " n" , " amx-complex,amx-transpose" )
188200
189201TARGET_BUILTIN(__builtin_ia32_tcvtrowd2ps, " V16fIUcUi" , " n" , " amx-avx512,avx10.2-512" )
190202TARGET_BUILTIN(__builtin_ia32_tcvtrowps2pbf16h, " V32yIUcUi" , " n" , " amx-avx512,avx10.2-512" )
@@ -216,6 +228,12 @@ TARGET_BUILTIN(__builtin_ia32_aand64, "vv*SOi", "n", "raoint")
216228TARGET_BUILTIN(__builtin_ia32_aor64, " vv*SOi" , " n" , " raoint" )
217229TARGET_BUILTIN(__builtin_ia32_axor64, " vv*SOi" , " n" , " raoint" )
218230
231+ // MOVRS
232+ TARGET_BUILTIN(__builtin_ia32_movrsqi, " ScvC*" , " n" , " movrs" )
233+ TARGET_BUILTIN(__builtin_ia32_movrshi, " SsvC*" , " n" , " movrs" )
234+ TARGET_BUILTIN(__builtin_ia32_movrssi, " SivC*" , " n" , " movrs" )
235+ TARGET_BUILTIN(__builtin_ia32_movrsdi, " SLLivC*" , " n" , " movrs" )
236+
219237// MOVRS and AVX10.2
220238TARGET_BUILTIN(__builtin_ia32_vmovrsb128, " V16cV16cC*" , " nV:128:" , " movrs,avx10.2-256" )
221239TARGET_BUILTIN(__builtin_ia32_vmovrsb256, " V32cV32cC*" , " nV:256:" , " movrs,avx10.2-256" )
0 commit comments