[turbofan] Add dynamic sized GraphAssemblerLabels
The GraphAssemblerLabel VarCount template parameter now can have a marker value ~0 which is marker for it being dynamic sized -- this means that a bit of template magic turns its std::arrays into std::vectors. Merging GraphAssemblerLabels works by duck-typing access to these arrays/vectors. These dynamic GraphAssemblerLabels are created whenever a single GraphAssemblerLabels being created when instead a list of values convertible to MachineRepresentation is passed in. Passing anything else will result in a GraphAssemblerLabel with marker value ~1, which is considered "invalid" and will give a compilation error down the line. std: :vector is passed into MakeLabel, with the static Change-Id: I833bdedac2f8e26fcc88aa59dd67b7e4b1c4296d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3913349 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/main@{#83424}
Showing
Please
register
or
sign in
to comment