Initial version of debug info pass for RS.
This introduces a new LLVM pass into libbcc called
RSAddDebugInfoPass. Its purpose is to add debug information metadata
to LLVM constructs generated by the other parts of libbcc. The
generated code generally lacks sufficient debugging information as it
has not been processed by the clang-based front-end.
The initial version of RSAddDebugInfoPass provides the following:
1. It annotates the expanded function generated by RSExpandKernel pass
with debug information, stating the name of the function and
source file indicating that the function has been generated.
2. It annotates the instructions of the *.expand function with
filename/line indicating that the function code has been generated.
The source file of both the generated function definition and
the instructions that make up the function is mapped to the source
location of /opt/renderscriptdebugger/1/generated.rs:1. That might be
source-mapped by the debugger to an appropriate file in the SDK, the
contents of which clearly indicate that the user is dealing with
generated code (i.e. one without a "physical" source file).
Change-Id: I2e566160a448d7bfbb3f8d16680e09e43c845693
7 files changed