28 if (
const auto [node, ioBarrierOp] =
29 rvsdg::TryGetSimpleNodeAndOptionalOp<IOBarrierOperation>(trace1);
42 return tracer.
trace(output);
45 std::optional<int64_t>
50 if (
const auto [_, constant] =
51 rvsdg::TryGetSimpleNodeAndOptionalOp<IntegerConstantOperation>(normalized);
54 const auto & rep = constant->Representation();
55 if (rep.is_known() && rep.nbits() <= 64)
60 if (
const auto [_, constant] =
61 rvsdg::TryGetSimpleNodeAndOptionalOp<rvsdg::BitConstantOperation>(normalized);
64 const auto & rep = constant->value();
65 if (rep.is_known() && rep.nbits() <= 64)
static rvsdg::Input & BarredInput(const rvsdg::SimpleNode &node) noexcept
rvsdg::Output & traceStep(rvsdg::Output &output, bool mayLeaveRegion) override
Output & trace(Output &output)
virtual Output & traceStep(Output &output, bool mayLeaveRegion)
Global memory state passed between functions.
rvsdg::Output & traceOutput(rvsdg::Output &output)
std::optional< int64_t > tryGetConstantSignedInteger(const rvsdg::Output &output)