diff options
Diffstat (limited to 'arch/x86/tools/relocs_common.c')
| -rw-r--r-- | arch/x86/tools/relocs_common.c | 16 | 
1 files changed, 12 insertions, 4 deletions
diff --git a/arch/x86/tools/relocs_common.c b/arch/x86/tools/relocs_common.c index 44d396823a5..acab636bcb3 100644 --- a/arch/x86/tools/relocs_common.c +++ b/arch/x86/tools/relocs_common.c @@ -11,12 +11,13 @@ void die(char *fmt, ...)  static void usage(void)  { -	die("relocs [--abs-syms|--abs-relocs|--text|--realmode] vmlinux\n"); +	die("relocs [--abs-syms|--abs-relocs|--reloc-info|--text|--realmode]" \ +	    " vmlinux\n");  }  int main(int argc, char **argv)  { -	int show_absolute_syms, show_absolute_relocs; +	int show_absolute_syms, show_absolute_relocs, show_reloc_info;  	int as_text, use_real_mode;  	const char *fname;  	FILE *fp; @@ -25,6 +26,7 @@ int main(int argc, char **argv)  	show_absolute_syms = 0;  	show_absolute_relocs = 0; +	show_reloc_info = 0;  	as_text = 0;  	use_real_mode = 0;  	fname = NULL; @@ -39,6 +41,10 @@ int main(int argc, char **argv)  				show_absolute_relocs = 1;  				continue;  			} +			if (strcmp(arg, "--reloc-info") == 0) { +				show_reloc_info = 1; +				continue; +			}  			if (strcmp(arg, "--text") == 0) {  				as_text = 1;  				continue; @@ -67,10 +73,12 @@ int main(int argc, char **argv)  	rewind(fp);  	if (e_ident[EI_CLASS] == ELFCLASS64)  		process_64(fp, use_real_mode, as_text, -			   show_absolute_syms, show_absolute_relocs); +			   show_absolute_syms, show_absolute_relocs, +			   show_reloc_info);  	else  		process_32(fp, use_real_mode, as_text, -			   show_absolute_syms, show_absolute_relocs); +			   show_absolute_syms, show_absolute_relocs, +			   show_reloc_info);  	fclose(fp);  	return 0;  }  | 
