Page MenuHomePhabricator

Scalable Vector IR Type (Try 3)

Authored by huntergr on Jul 2 2019, 7:09 AM.



Reintroduces the scalable vector IR type from D32530, after it was reverted
a couple of times due to increasing chromium LTO build times. This latest
incarnation removes the walk over aggregate types from the verifier entirely,
in favor of rejecting scalable vectors in the isValidElementType methods in
ArrayType and StructType. This removes the 70% degradation observed with
the second repro tarball from PR42210.

Diff Detail


Event Timeline

huntergr created this revision.Jul 2 2019, 7:09 AM
Ka-Ka added a subscriber: Ka-Ka.Jul 2 2019, 7:16 AM
fhahn added a subscriber: fhahn.Jul 2 2019, 8:19 AM
sdesmalen accepted this revision.Jul 2 2019, 11:56 PM


700 ↗(On Diff #207556)

nit: you can use the Assert macro as a shorthand:
Assert(!VTy->isScalable(), "Globals cannot contain scalable vectors", &GV);

This revision is now accepted and ready to land.Jul 2 2019, 11:56 PM
This revision was automatically updated to reflect the committed changes.
Herald added a project: Restricted Project. · View Herald TranscriptJul 5 2019, 5:48 AM
Herald added a subscriber: kristina. · View Herald Transcript