Improvements to the RSAddDebugInfo pass.

This change makes the RSAddDebugInfo pass generate much more complete
debug information than before.

Newly implemented features and changes:
* Debug info for each of the expanded kernel arguments is now generated.
  This allows the debugger to inspect kernel invocation size,
  current outer loop indices ('y' and 'z') and other useful information.
* Adds debug info for the expanded kernel loop index variable.
  This allows the debugger to access the current thread index along the
  'x' axis.
* Pass now uses MetadataExtractor to get the list of kernel functions
  instead of relying on naming conventions.
* Various code improvements.

(cherry picked from commit 9d009b0a25bf7eea6f2da2521107dc37acea9acc)

Change-Id: I4d6ee8f1bd2844ed85ccd933ead0fb479d716aae
1 file changed