Home
last modified time | relevance | path

Searched refs:Matrix (Results 1 – 25 of 75) sorted by relevance

123

/openbsd-src/gnu/llvm/llvm/include/llvm/CodeGen/PBQP/
H A DMath.h121 class Matrix {
123 friend hash_code hash_value(const Matrix &);
127 Matrix(unsigned Rows, unsigned Cols) : in Matrix() function
133 Matrix(unsigned Rows, unsigned Cols, PBQPNum InitVal) in Matrix() function
140 Matrix(const Matrix &M) in Matrix() function
147 Matrix(Matrix &&M) in Matrix() function
153 bool operator==(const Matrix &M) const {
205 Matrix transpose() const { in transpose()
207 Matrix M(Cols, Rows); in transpose()
215 Matrix& operator+=(const Matrix &M) {
[all …]
H A DReductionRules.h34 using Matrix = typename GraphT::Matrix; in applyR1() local
43 const Matrix &ECosts = G.getEdgeCosts(EId); in applyR1()
78 using Matrix = typename GraphT::Matrix; in applyR2() local
96 const Matrix *YXECosts = FlipEdge1 ? in applyR2()
97 new Matrix(G.getEdgeCosts(YXEId).transpose()) : in applyR2()
100 const Matrix *ZXECosts = FlipEdge2 ? in applyR2()
101 new Matrix(G.getEdgeCosts(ZXEId).transpose()) : in applyR2()
134 const Matrix &YZECosts = G.getEdgeCosts(YZEId); in applyR2()
182 using Matrix = typename GraphT::Matrix; in backpropagate() local
203 const Matrix& edgeCosts = G.getEdgeCosts(EId); in backpropagate()
H A DGraph.h54 using Matrix = typename SolverT::Matrix; variable
530 const Matrix& getEdgeCosts(EdgeId EId) const { in getEdgeCosts()
H A DCostAllocator.h114 using Matrix = MatrixT; variable
/openbsd-src/gnu/usr.bin/gcc/gcc/testsuite/g++.old-deja/g++.jason/
H A Dtemplate5.C5 struct Matrix { struct
10 Matrix<M,N>& Mul(Matrix<M,N>& Q,Matrix<M,H>& A,Matrix<H,N>& B) { in Mul() argument
24 Matrix<2, 3> q; in f()
25 Matrix<2, 4> a; in f()
26 Matrix<4, 3> b; in f()
H A Dref2.C4 typedef float Matrix[4][4]; typedef
5 Matrix m;
6 Matrix& f () { return m; } in f()
/openbsd-src/gnu/llvm/llvm/lib/Target/X86/
H A DX86InterleavedAccess.cpp323 ArrayRef<Instruction *> Matrix, in interleave8bitStride4VF8() argument
349 Builder.CreateShuffleVector(Matrix[0], Matrix[1], MaskLow); in interleave8bitStride4VF8()
351 Builder.CreateShuffleVector(Matrix[2], Matrix[3], MaskLow); in interleave8bitStride4VF8()
363 ArrayRef<Instruction *> Matrix, SmallVectorImpl<Value *> &TransposedMatrix, in interleave8bitStride4() argument
401 IntrVec[0] = Builder.CreateShuffleVector(Matrix[0], Matrix[1], MaskLow); in interleave8bitStride4()
402 IntrVec[1] = Builder.CreateShuffleVector(Matrix[0], Matrix[1], MaskHigh); in interleave8bitStride4()
403 IntrVec[2] = Builder.CreateShuffleVector(Matrix[2], Matrix[3], MaskLow); in interleave8bitStride4()
404 IntrVec[3] = Builder.CreateShuffleVector(Matrix[2], Matrix[3], MaskHigh); in interleave8bitStride4()
689 ArrayRef<Instruction *> Matrix, in transpose_4x4() argument
691 assert(Matrix.size() == 4 && "Invalid matrix size"); in transpose_4x4()
[all …]
H A DX86RegisterInfo.h163 const LiveRegMatrix *Matrix) const override;
/openbsd-src/gnu/llvm/llvm/lib/CodeGen/
H A DLiveRegMatrix.cpp61 if (NumRegUnits != Matrix.size()) in runOnMachineFunction()
63 Matrix.init(LIUAlloc, NumRegUnits); in runOnMachineFunction()
71 for (unsigned i = 0, e = Matrix.size(); i != e; ++i) { in releaseMemory()
72 Matrix[i].clear(); in releaseMemory()
113 Matrix[Unit].unify(VirtReg, Range); in assign()
130 Matrix[Unit].extract(VirtReg, Range); in unassign()
140 if (!Matrix[*Unit].empty()) in isPhysRegUsed()
181 Q.init(UserTag, LR, Matrix[RegUnit]); in query()
233 Q.reset(UserTag, LR, Matrix[*Units]); in checkInterference()
243 if ((VRegInterval = Matrix[*Unit].getOneVReg())) in getOneVReg()
H A DRegAllocBasic.cpp149 Matrix->unassign(LI); in INITIALIZE_PASS_DEPENDENCY()
167 Matrix->unassign(LI); in LRE_WillShrinkVirtReg()
217 LiveIntervalUnion::Query &Q = Matrix->query(VirtReg, *Units); in spillInterferences()
238 Matrix->unassign(Spill); in spillInterferences()
266 AllocationOrder::create(VirtReg.reg(), *VRM, RegClassInfo, Matrix); in selectOrSplit()
270 switch (Matrix->checkInterference(VirtReg, PhysReg)) { in selectOrSplit()
291 assert(!Matrix->checkInterference(VirtReg, PhysReg) && in selectOrSplit()
H A DAllocationOrder.cpp31 const LiveRegMatrix *Matrix) { in create() argument
37 TRI->getRegAllocationHints(VirtReg, Order, Hints, MF, &VRM, Matrix); in create()
H A DRegAllocGreedy.cpp234 Matrix->unassign(LI); in LRE_CanEraseVirtReg()
252 Matrix->unassign(LI); in LRE_WillShrinkVirtReg()
401 if (!Matrix->checkInterference(VirtReg, *I)) { in tryAssign()
450 AllocationOrder::create(VirtReg.reg(), *VRM, RegClassInfo, Matrix); in canReassign()
459 LiveIntervalUnion::Query subQ(VirtReg, Matrix->getLiveUnions()[*Units]); in canReassign()
491 LiveIntervalUnion::Query &Q = Matrix->query(VirtReg, *Units); in evictInterference()
506 Matrix->unassign(*Intf); in evictInterference()
523 return !Matrix->isPhysRegUsed(PhysReg); in isUnusedCalleeSavedReg()
1408 if (!Matrix->query(const_cast<LiveInterval&>(SA->getParent()), *Units) in calcGapWeights()
1420 Matrix->getLiveUnions()[*Units] .find(StartIdx); in calcGapWeights()
[all …]
H A DRegAllocBase.cpp63 Matrix = &mat; in init()
100 Matrix->invalidateVirtRegs(); in allocatePhysRegs()
144 Matrix->assign(*VirtReg, AvailablePhysReg); in allocatePhysRegs()
H A DRegAllocEvictionAdvisor.cpp127 : MF(MF), RA(RA), Matrix(RA.getInterferenceMatrix()), in RegAllocEvictionAdvisor()
189 if (Matrix->checkInterference(VirtReg, PhysReg) > LiveRegMatrix::IK_VirtReg) in canEvictInterferenceBasedOnCost()
205 LiveIntervalUnion::Query &Q = Matrix->query(VirtReg, *Units); in canEvictInterferenceBasedOnCost()
H A DRegAllocBase.h69 LiveRegMatrix *Matrix = nullptr; variable
H A DAllocationOrder.h86 const LiveRegMatrix *Matrix);
H A DRegAllocEvictionAdvisor.h139 LiveRegMatrix *const Matrix; variable
/openbsd-src/gnu/llvm/llvm/include/llvm/IR/
H A DMatrixBuilder.h89 CallInst *CreateColumnMajorStore(Value *Matrix, Value *Ptr, Align Alignment,
93 Value *Ops[] = {Matrix, Ptr,
96 Type *OverloadedTypes[] = {Matrix->getType(), Stride->getType()};
110 CallInst *CreateMatrixTranspose(Value *Matrix, unsigned Rows,
112 auto *OpType = cast<VectorType>(Matrix->getType());
117 Value *Ops[] = {Matrix, B.getInt32(Rows), B.getInt32(Columns)};
146 Value *CreateMatrixInsert(Value *Matrix, Value *NewVal, Value *RowIdx, in CreateMatrixInsert() argument
149 Matrix, NewVal, in CreateMatrixInsert()
/openbsd-src/gnu/usr.bin/gcc/gcc/testsuite/g++.old-deja/g++.mike/
H A Dfresco1.C11 typedef Coord Matrix[4][4]; typedef
12 virtual void vf1(BugDemo::Matrix m) = 0;
/openbsd-src/gnu/llvm/llvm/lib/Target/AMDGPU/
H A DSIPreAllocateWWMRegs.cpp39 LiveRegMatrix *Matrix; member in __anonaddf18be0111::SIPreAllocateWWMRegs
105 Matrix->checkInterference(LI, PhysReg) == LiveRegMatrix::IK_Free) { in processDef()
106 Matrix->assign(LI, PhysReg); in processDef()
199 Matrix = &getAnalysis<LiveRegMatrix>(); in runOnMachineFunction()
/openbsd-src/gnu/llvm/llvm/include/llvm/CodeGen/
H A DLiveRegMatrix.h50 LiveIntervalUnion::Array Matrix; variable
157 LiveIntervalUnion *getLiveUnions() { return &Matrix[0]; } in getLiveUnions()
H A DRegAllocPBQP.h55 MatrixMetadata(const Matrix& M) in MatrixMetadata()
276 using RawMatrix = PBQP::Matrix;
278 using Matrix = RAMatrix; variable
279 using CostAllocator = PBQP::PoolCostAllocator<Vector, Matrix>;
328 void handleUpdateCosts(EdgeId EId, const Matrix& NewCosts) { in handleUpdateCosts()
/openbsd-src/gnu/llvm/clang/docs/
H A DMatrixTypes.rst2 Matrix Types
20 Matrix Type
24 number of *rows*, and a constant number of *columns*. Matrix types with the same
42 Matrix Type Attribute
45 Matrix types can be declared by adding the ``matrix_type`` attribute to the
91 Matrix Type Element Access Operator
118 Matrix Type Binary Operators
192 Matrix Type Builtin Operations
203 * *M*, *M1*, *M2*, *M3* - Matrix types
/openbsd-src/gnu/llvm/llvm/lib/Target/RISCV/
H A DRISCVRegisterInfo.h101 const LiveRegMatrix *Matrix) const override;
/openbsd-src/gnu/llvm/llvm/lib/Target/SystemZ/
H A DSystemZRegisterInfo.h150 const LiveRegMatrix *Matrix) const override;

123