• Home
  • Raw
  • Download

Lines Matching refs:gate

161     for (const auto &gate : gateList) {  in PrintAllGates()  local
162 LoadGatePtrConst(gate)->Print(); in PrintAllGates()
170 for (const auto &gate : gateList) { in PrintAllGatesWithBytecode() local
171 LoadGatePtrConst(gate)->PrintWithBytecode(); in PrintAllGatesWithBytecode()
187 GateRef Circuit::GetGateRef(const Gate *gate) const in GetGateRef()
190 return static_cast<GateRef>(reinterpret_cast<const uint8_t *>(gate) - GetDataPtrConst(0)); in GetGateRef()
220 for (auto &gate : gateList) { in ResetAllGateTimeStamps() local
221 const_cast<Gate *>(LoadGatePtrConst(gate))->SetMark(MarkCode::NO_MARK, 0); in ResetAllGateTimeStamps()
230 MarkCode Circuit::GetMark(GateRef gate) const in GetMark()
232 return LoadGatePtrConst(gate)->GetMark(GetTime()); in GetMark()
235 void Circuit::SetMark(GateRef gate, MarkCode mark) const in SetMark() argument
237 const_cast<Gate *>(LoadGatePtrConst(gate))->SetMark(mark, GetTime()); in SetMark()
240 void Circuit::Verify(GateRef gate) const in Verify()
242 LoadGatePtrConst(gate)->Verify(IsArch64()); in Verify()
250 bool Circuit::IsLoopHead(GateRef gate) const in IsLoopHead()
252 if (gate != NullGate()) { in IsLoopHead()
253 const Gate *curGate = LoadGatePtrConst(gate); in IsLoopHead()
259 bool Circuit::IsControlCase(GateRef gate) const in IsControlCase()
261 if (gate != NullGate()) { in IsControlCase()
262 const Gate *curGate = LoadGatePtrConst(gate); in IsControlCase()
268 bool Circuit::IsValueSelector(GateRef gate) const in IsValueSelector()
270 if (gate != NullGate()) { in IsValueSelector()
271 const Gate *curGate = LoadGatePtrConst(gate); in IsValueSelector()
277 bool Circuit::IsSelector(GateRef gate) const in IsSelector()
279 if (gate != NullGate()) { in IsSelector()
280 const Gate *curGate = LoadGatePtrConst(gate); in IsSelector()
287 GateRef Circuit::GetIn(GateRef gate, size_t idx) const in GetIn() argument
289 ASSERT(idx < LoadGatePtrConst(gate)->GetNumIns()); in GetIn()
290 if (IsInGateNull(gate, idx)) { in GetIn()
293 const Gate *curGate = LoadGatePtrConst(gate); in GetIn()
297 bool Circuit::IsInGateNull(GateRef gate, size_t idx) const in IsInGateNull() argument
299 const Gate *curGate = LoadGatePtrConst(gate); in IsInGateNull()
303 bool Circuit::IsFirstOutNull(GateRef gate) const in IsFirstOutNull()
305 const Gate *curGate = LoadGatePtrConst(gate); in IsFirstOutNull()
309 std::vector<GateRef> Circuit::GetOutVector(GateRef gate) const in GetOutVector()
312 const Gate *curGate = LoadGatePtrConst(gate); in GetOutVector()
324 void Circuit::NewIn(GateRef gate, size_t idx, GateRef in) in NewIn() argument
327 ASSERT(idx < LoadGatePtrConst(gate)->GetNumIns()); in NewIn()
328 ASSERT(Circuit::IsInGateNull(gate, idx)); in NewIn()
330 LoadGatePtr(gate)->NewIn(idx, LoadGatePtr(in)); in NewIn()
333 void Circuit::ModifyIn(GateRef gate, size_t idx, GateRef in) in ModifyIn() argument
336 ASSERT(idx < LoadGatePtrConst(gate)->GetNumIns()); in ModifyIn()
337 ASSERT(!Circuit::IsInGateNull(gate, idx) || (GetOpCode(gate) == OpCode::SAVE_REGISTER)); in ModifyIn()
339 LoadGatePtr(gate)->ModifyIn(idx, LoadGatePtr(in)); in ModifyIn()
342 void Circuit::DeleteIn(GateRef gate, size_t idx) in DeleteIn() argument
344 ASSERT(idx < LoadGatePtrConst(gate)->GetNumIns()); in DeleteIn()
345 ASSERT(!Circuit::IsInGateNull(gate, idx)); in DeleteIn()
346 LoadGatePtr(gate)->DeleteIn(idx); in DeleteIn()
349 void Circuit::DeleteGate(GateRef gate) in DeleteGate() argument
352 if (GetOpCode(gate) != OpCode::CONSTANT) { in DeleteGate()
353 LoadGatePtr(gate)->DeleteGate(); in DeleteGate()
354 LoadGatePtr(gate)->SetMetaData(Nop()); in DeleteGate()
358 void Circuit::DecreaseIn(GateRef gate, size_t idx) in DecreaseIn() argument
360 auto numIns = LoadGatePtrConst(gate)->GetNumIns(); in DecreaseIn()
362 ModifyIn(gate, i, GetIn(gate, i + 1)); in DecreaseIn()
364 DeleteIn(gate, numIns - 1); in DecreaseIn()
366 LoadGatePtr(gate)->GetMetaData()); in DecreaseIn()
372 LoadGatePtr(gate)->SetMetaData(meta); in DecreaseIn()
376 void Circuit::SetGateType(GateRef gate, GateType type) in SetGateType() argument
378 LoadGatePtr(gate)->SetGateType(type); in SetGateType()
381 void Circuit::SetMachineType(GateRef gate, MachineType machineType) in SetMachineType() argument
383 LoadGatePtr(gate)->SetMachineType(machineType); in SetMachineType()
386 GateType Circuit::GetGateType(GateRef gate) const in GetGateType()
388 return LoadGatePtrConst(gate)->GetGateType(); in GetGateType()
391 MachineType Circuit::GetMachineType(GateRef gate) const in GetMachineType()
393 return LoadGatePtrConst(gate)->GetMachineType(); in GetMachineType()
396 OpCode Circuit::GetOpCode(GateRef gate) const in GetOpCode()
398 return LoadGatePtrConst(gate)->GetOpCode(); in GetOpCode()
401 GateId Circuit::GetId(GateRef gate) const in GetId()
403 return LoadGatePtrConst(gate)->GetId(); in GetId()
406 void Circuit::Print(GateRef gate) const in Print()
408 LoadGatePtrConst(gate)->Print(); in Print()
457 auto gate = NewGate(metaBuilder_.Constant(value), machineType, type); in GetConstantGate() local
458 constantCache_[{machineType, value, type}] = gate; in GetConstantGate()
459 return gate; in GetConstantGate()
473 auto gate = NewGate(metaBuilder_.ConstString(str), machineType, type); in GetConstantStringGate() local
474 return gate; in GetConstantStringGate()
483 auto gate = NewGate(GetEnv(), MachineType::I64, {jsFunc}, GateType::AnyType()); in GetInitialEnvGate() local
484 initialEnvCache_[jsFunc] = gate; in GetInitialEnvGate()
485 return gate; in GetInitialEnvGate()