Add following kernel function attributes for AMD GPU Tools (debugger, profiler):
- amdgpu_tools_insert_nops - insert two nop instructions for each high level source statement
- amdgpu_tools_num_reserved_vgpr(<num>) - reserve <num> vector registers and do not use throughout kernel execution
- amdgpu_tools_num_reserved_sgpr(<num>) - reserve <num> scalar registers and do not use throughout kernel execution
Also add similar options that cause to insert attributes for each kernel, options take precedence
+ Updated docs, added tests
I don't see any code that checks whether the function is actually a kernel function, nor sema tests that diagnose if this is attached to a non-kernel function.
It may make sense to make a SubsetSubject that does the checking for you, and use that in all of these attributes.