[llvm] [X86][tablgen] Auto-gen broadcast tables (PR #73654)

Shengchen Kan via llvm-commits llvm-commits at lists.llvm.org
Thu Nov 30 05:35:32 PST 2023


================
@@ -5995,3 +5995,2634 @@ static const X86FoldTableEntry Table4[] = {
   {X86::VXORPSZrrk, X86::VXORPSZrmk, 0},
 };
 
+static const X86FoldTableEntry BroadcastTable1[] = {
+  {X86::VCVTDQ2PDZ128rr, X86::VCVTDQ2PDZ128rmb, TB_BCAST_SD},
+  {X86::VCVTDQ2PDZ256rr, X86::VCVTDQ2PDZ256rmb, TB_BCAST_SD},
+  {X86::VCVTDQ2PDZrr, X86::VCVTDQ2PDZrmb, TB_BCAST_SD},
+  {X86::VCVTDQ2PHZ128rr, X86::VCVTDQ2PHZ128rmb, TB_BCAST_SH},
+  {X86::VCVTDQ2PHZ256rr, X86::VCVTDQ2PHZ256rmb, TB_BCAST_SH},
+  {X86::VCVTDQ2PHZrr, X86::VCVTDQ2PHZrmb, TB_BCAST_SH},
+  {X86::VCVTDQ2PSZ128rr, X86::VCVTDQ2PSZ128rmb, TB_BCAST_SS},
+  {X86::VCVTDQ2PSZ256rr, X86::VCVTDQ2PSZ256rmb, TB_BCAST_SS},
+  {X86::VCVTDQ2PSZrr, X86::VCVTDQ2PSZrmb, TB_BCAST_SS},
+  {X86::VCVTNEPS2BF16Z128rr, X86::VCVTNEPS2BF16Z128rmb, TB_BCAST_SS},
+  {X86::VCVTNEPS2BF16Z256rr, X86::VCVTNEPS2BF16Z256rmb, TB_BCAST_SS},
+  {X86::VCVTNEPS2BF16Zrr, X86::VCVTNEPS2BF16Zrmb, TB_BCAST_SS},
+  {X86::VCVTPD2DQZ128rr, X86::VCVTPD2DQZ128rmb, TB_BCAST_SD},
+  {X86::VCVTPD2DQZ256rr, X86::VCVTPD2DQZ256rmb, TB_BCAST_SD},
+  {X86::VCVTPD2DQZrr, X86::VCVTPD2DQZrmb, TB_BCAST_SD},
+  {X86::VCVTPD2PHZ128rr, X86::VCVTPD2PHZ128rmb, TB_BCAST_SD},
+  {X86::VCVTPD2PHZ256rr, X86::VCVTPD2PHZ256rmb, TB_BCAST_SD},
+  {X86::VCVTPD2PHZrr, X86::VCVTPD2PHZrmb, TB_BCAST_SD},
+  {X86::VCVTPD2PSZ128rr, X86::VCVTPD2PSZ128rmb, TB_BCAST_SS},
+  {X86::VCVTPD2PSZ256rr, X86::VCVTPD2PSZ256rmb, TB_BCAST_SS},
+  {X86::VCVTPD2PSZrr, X86::VCVTPD2PSZrmb, TB_BCAST_SS},
+  {X86::VCVTPD2QQZ128rr, X86::VCVTPD2QQZ128rmb, TB_BCAST_SD},
+  {X86::VCVTPD2QQZ256rr, X86::VCVTPD2QQZ256rmb, TB_BCAST_SD},
+  {X86::VCVTPD2QQZrr, X86::VCVTPD2QQZrmb, TB_BCAST_SD},
+  {X86::VCVTPD2UDQZ128rr, X86::VCVTPD2UDQZ128rmb, TB_BCAST_SD},
+  {X86::VCVTPD2UDQZ256rr, X86::VCVTPD2UDQZ256rmb, TB_BCAST_SD},
+  {X86::VCVTPD2UDQZrr, X86::VCVTPD2UDQZrmb, TB_BCAST_SD},
+  {X86::VCVTPD2UQQZ128rr, X86::VCVTPD2UQQZ128rmb, TB_BCAST_SD},
+  {X86::VCVTPD2UQQZ256rr, X86::VCVTPD2UQQZ256rmb, TB_BCAST_SD},
+  {X86::VCVTPD2UQQZrr, X86::VCVTPD2UQQZrmb, TB_BCAST_SD},
+  {X86::VCVTPH2DQZ128rr, X86::VCVTPH2DQZ128rmb, TB_BCAST_SH},
+  {X86::VCVTPH2DQZ256rr, X86::VCVTPH2DQZ256rmb, TB_BCAST_SH},
+  {X86::VCVTPH2DQZrr, X86::VCVTPH2DQZrmb, TB_BCAST_SH},
+  {X86::VCVTPH2PDZ128rr, X86::VCVTPH2PDZ128rmb, TB_BCAST_SD},
+  {X86::VCVTPH2PDZ256rr, X86::VCVTPH2PDZ256rmb, TB_BCAST_SD},
+  {X86::VCVTPH2PDZrr, X86::VCVTPH2PDZrmb, TB_BCAST_SD},
+  {X86::VCVTPH2PSXZ128rr, X86::VCVTPH2PSXZ128rmb, TB_BCAST_SS},
+  {X86::VCVTPH2PSXZ256rr, X86::VCVTPH2PSXZ256rmb, TB_BCAST_SS},
+  {X86::VCVTPH2PSXZrr, X86::VCVTPH2PSXZrmb, TB_BCAST_SS},
----------------
KanRobert wrote:

Done.

https://github.com/llvm/llvm-project/pull/73654


More information about the llvm-commits mailing list