mesa: added gl_program::IndirectRegisterFiles field

Now drivers, etc. can know which register files are accessed with
indirect addressing.  Before we just checked gl_program::NumAddressRegs
but didn't know if that was the constant buffer, temp regs, or what.

The only user of this new field so far will be the gallium state tracker.
diff --git a/src/mesa/program/prog_print.c b/src/mesa/program/prog_print.c
index 6ab199a..6056c45 100644
--- a/src/mesa/program/prog_print.c
+++ b/src/mesa/program/prog_print.c
@@ -924,6 +924,8 @@
    fprintf(f, "NumParameters=%d\n", prog->NumParameters);
    fprintf(f, "NumAttributes=%d\n", prog->NumAttributes);
    fprintf(f, "NumAddressRegs=%d\n", prog->NumAddressRegs);
+   fprintf(f, "IndirectRegisterFiles: 0x%x (0b%s)\n",
+           prog->IndirectRegisterFiles, binary(prog->IndirectRegisterFiles));
    fprintf(f, "SamplersUsed: 0x%x (0b%s)\n",
                  prog->SamplersUsed, binary(prog->SamplersUsed));
    fprintf(f, "Samplers=[ ");