[VPlan] Remove duplicated VPValue IDs (NFCI).
authorFlorian Hahn <flo@fhahn.com>
Tue, 17 Jan 2023 15:11:37 +0000 (15:11 +0000)
committerFlorian Hahn <flo@fhahn.com>
Tue, 17 Jan 2023 15:11:38 +0000 (15:11 +0000)
commitd47bdae28e8ea7a64de2ac27159733bba8117cda
tree10f253801c68711167b44c916f907218d35dcfff
parent4adf89fc65f6ffda8add795d002334b6bbea55f5
[VPlan] Remove duplicated VPValue IDs (NFCI).

At the moment, both VPValue and VPDef have an ID used when casting via
classof. This duplication is cumbersome, because it requires adding IDs
for new recipes twice and also requires setting them twice. In a few
cases, there's only a VPDef ID and no VPValue ID, which can cause same
confusion.

To simplify things, remove the VPValue IDs for different recipes.
Instead, only retain the generic VPValue ID (= used VPValues without a
corresponding defining recipe) and VPVRecipe for VPValues that are
defined by recipes that inherit from VPValue.

Reviewed By: Ayal

Differential Revision: https://reviews.llvm.org/D140848
llvm/lib/Transforms/Vectorize/VPlan.h
llvm/lib/Transforms/Vectorize/VPlanValue.h