Browse Source

PR29788, gprofng cannot display Java's generated assembly code

gprofng/ChangeLog
2022-11-15  Vladimir Mezentsev  <vladimir.mezentsev@oracle.com>

	PR gprofng/29788
	* src/Experiment.h: Declare dyntext_name.
	* src/Experiment.cc: Use dyntext_name to initialize img_fname.
gdb-13-branch
Vladimir Mezentsev 4 years ago
parent
commit
ab11c8905f
  1. 10
      gprofng/src/Experiment.cc
  2. 3
      gprofng/src/Experiment.h

10
gprofng/src/Experiment.cc

@ -1370,6 +1370,7 @@ Experiment::Experiment ()
expt_name = NULL;
arch_name = NULL;
fndr_arch_name = NULL;
dyntext_name = NULL;
logFile = NULL;
dataDscrs = new Vector<DataDescriptor*>;
@ -1432,6 +1433,7 @@ Experiment::~Experiment ()
free (expt_name);
free (arch_name);
free (fndr_arch_name);
free (dyntext_name);
delete jthreads_idx;
delete cstack;
delete cstackShowHide;
@ -6052,11 +6054,10 @@ Experiment::fetch_pprocq ()
int
Experiment::read_dyntext_file ()
{
char *data_file_name = dbe_sprintf ("%s/%s", expt_name, SP_DYNTEXT_FILE);
Data_window *dwin = new Data_window (data_file_name);
dyntext_name = dbe_sprintf ("%s/%s", expt_name, SP_DYNTEXT_FILE);
Data_window *dwin = new Data_window (dyntext_name);
if (dwin->not_opened ())
{
free (data_file_name);
delete dwin;
return 1;
}
@ -6089,7 +6090,7 @@ Experiment::read_dyntext_file ()
case DT_CODE:
if (fp)
{
fp->img_fname = data_file_name;
fp->img_fname = dyntext_name;
fp->img_offset = offset + sizeof (DT_common);
if ((platform != Intel) && (platform != Amd64))
{ //ARCH(SPARC)
@ -6178,7 +6179,6 @@ Experiment::read_dyntext_file ()
offset += cpcktsize;
}
free (progress_msg);
free (data_file_name);
delete dwin;
return 0;
}

3
gprofng/src/Experiment.h

@ -434,7 +434,8 @@ protected:
char *expt_name; // name of experiment
char *arch_name; // <experiment>/archive
char *fndr_arch_name; // <founder_experiment>/archive
//TBR? hrtime_t sample_time; // total of sample durations
char *dyntext_name; // <experiment>/dyntext
int yyparse (); // Allow yyparse actions to access
Vaddr stack_base; // Stack base

Loading…
Cancel
Save