[shuffle] Move program_id to new structure.

This CL moves the `program_id` to `utils/generation_id`. The program id
was renamed as it's also used by symbol which lives at a different
layering to the AST program.

Bug: tint:1988
Change-Id: I50146ac25e89e269276f9f7030ada989c98db66e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/142861
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
diff --git a/src/tint/lang/wgsl/ast/call_statement.cc b/src/tint/lang/wgsl/ast/call_statement.cc
index 597a451..f19071f 100644
--- a/src/tint/lang/wgsl/ast/call_statement.cc
+++ b/src/tint/lang/wgsl/ast/call_statement.cc
@@ -20,13 +20,13 @@
 
 namespace tint::ast {
 
-CallStatement::CallStatement(ProgramID pid,
+CallStatement::CallStatement(GenerationID pid,
                              NodeID nid,
                              const Source& src,
                              const CallExpression* call)
     : Base(pid, nid, src), expr(call) {
     TINT_ASSERT(AST, expr);
-    TINT_ASSERT_PROGRAM_IDS_EQUAL_IF_VALID(AST, expr, program_id);
+    TINT_ASSERT_GENERATION_IDS_EQUAL_IF_VALID(AST, expr, generation_id);
 }
 
 CallStatement::~CallStatement() = default;