summaryrefslogtreecommitdiff
path: root/libcuda
diff options
context:
space:
mode:
authorMengchi Zhang <[email protected]>2019-04-21 17:11:07 -0400
committerMengchi Zhang <[email protected]>2019-04-21 20:55:26 -0400
commitfe15e8714972667342e650e8c348e7d6b68e5fbc (patch)
tree63219c2f714786e97831b52f5101900bdd274961 /libcuda
parenta7ae218e89859b5a5b8433f57029590b8877fc18 (diff)
Fix cuobjdump_in
Signed-off-by: Mengchi Zhang <[email protected]>
Diffstat (limited to 'libcuda')
-rw-r--r--libcuda/cuda_runtime_api.cc6
1 files changed, 5 insertions, 1 deletions
diff --git a/libcuda/cuda_runtime_api.cc b/libcuda/cuda_runtime_api.cc
index ef5abce..1d1b950 100644
--- a/libcuda/cuda_runtime_api.cc
+++ b/libcuda/cuda_runtime_api.cc
@@ -1937,9 +1937,9 @@ void setCuobjdumpsassfilename(const char* filename){
}
typedef void * yyscan_t;
extern int cuobjdump_lex_init(yyscan_t* scanner);
+extern void cuobjdump_set_in (FILE * _in_str ,yyscan_t yyscanner );
extern int cuobjdump_parse(yyscan_t scanner);
extern int cuobjdump_lex_destroy(yyscan_t scanner);
-extern FILE *cuobjdump_in;
//! Return the executable file of the process containing the PTX/SASS code
//!
@@ -2148,11 +2148,13 @@ void extract_code_using_cuobjdump(){
if (parse_output) {
printf("Parsing file %s\n", fname);
+ FILE *cuobjdump_in;
cuobjdump_in = fopen(fname, "r");
yyscan_t scanner;
cuobjdump_lex_init(&scanner);
cuobjdump_parse(scanner);
+ cuobjdump_set_in(cuobjdump_in, scanner);
cuobjdump_lex_destroy(scanner);
fclose(cuobjdump_in);
printf("Done parsing!!!\n");
@@ -2201,9 +2203,11 @@ void extract_code_using_cuobjdump(){
std::cout << "Done" << std::endl;
std::cout << "Trying to parse " << libcodfn.str() << std::endl;
+ FILE *cuobjdump_in;
cuobjdump_in = fopen(libcodfn.str().c_str(), "r");
yyscan_t scanner;
cuobjdump_lex_init(&scanner);
+ cuobjdump_set_in(cuobjdump_in, scanner);
cuobjdump_parse(scanner);
cuobjdump_lex_destroy(scanner);
fclose(cuobjdump_in);