Lines Matching full:table

24 // makes sorting these tables a simple matter of alphabetizing the table.
27 // Table to map instructions safe to broadcast using a different width from the
90 lookupFoldTableImpl(ArrayRef<X86FoldTableEntry> Table, unsigned RegOp) { in lookupFoldTableImpl() argument
92 #define CHECK_SORTED_UNIQUE(TABLE) \ in lookupFoldTableImpl() argument
93 assert(llvm::is_sorted(TABLE) && #TABLE " is not sorted"); \ in lookupFoldTableImpl()
94 assert(std::adjacent_find(std::begin(Table), std::end(Table)) == \ in lookupFoldTableImpl()
95 std::end(Table) && \ in lookupFoldTableImpl()
96 #TABLE " is not unique"); in lookupFoldTableImpl()
117 const X86FoldTableEntry *Data = llvm::lower_bound(Table, RegOp); in lookupFoldTableImpl()
118 if (Data != Table.end() && Data->KeyOp == RegOp && in lookupFoldTableImpl()
166 // function scope static variable to lazily init the unfolding table.
169 std::vector<X86FoldTableEntry> Table; member
213 // Sort the memory->reg unfold table. in X86MemUnfoldTable()
214 array_pod_sort(Table.begin(), Table.end()); in X86MemUnfoldTable()
217 assert(std::adjacent_find(Table.begin(), Table.end()) == Table.end() && in X86MemUnfoldTable()
218 "Memory unfolding table is not unique!"); in X86MemUnfoldTable()
222 // NOTE: This swaps the KeyOp and DstOp in the table so we can sort it. in addTableEntry()
224 Table.push_back({Entry.DstOp, Entry.KeyOp, in addTableEntry()
232 auto &Table = MemUnfoldTable.Table; in lookupUnfoldTable() local
233 auto I = llvm::lower_bound(Table, MemOp); in lookupUnfoldTable()
234 if (I != Table.end() && I->KeyOp == MemOp) in lookupUnfoldTable()
242 // as a function scope static variable to lazily init the folding table.
245 std::vector<X86FoldTableEntry> Table; member
256 Table.push_back({MemOp, BcstOp, Flags}); in X86BroadcastFoldTable()
266 Table.push_back({MemOp, BcstOp, Flags}); in X86BroadcastFoldTable()
277 Table.push_back({MemOp, BcstOp, Flags}); in X86BroadcastFoldTable()
287 Table.push_back({MemOp, BcstOp, Flags}); in X86BroadcastFoldTable()
298 Table.push_back({MemOp, BcstOp, Flags}); in X86BroadcastFoldTable()
302 // Sort the memory->broadcast fold table. in X86BroadcastFoldTable()
303 array_pod_sort(Table.begin(), Table.end()); in X86BroadcastFoldTable()
327 auto &Table = BroadcastFoldTable.Table; in lookupBroadcastFoldTableBySize() local
328 for (auto I = llvm::lower_bound(Table, MemOp); in lookupBroadcastFoldTableBySize()
329 I != Table.end() && I->KeyOp == MemOp; ++I) { in lookupBroadcastFoldTableBySize()