···292292 printf("%s:\n", label);293293}294294295295-/* Provide proper symbols relocatability by their '_text' relativeness. */296296-static void output_address(unsigned long long addr)297297-{298298- if (_text <= addr)299299- printf("\tPTR\t_text + %#llx\n", addr - _text);300300- else301301- printf("\tPTR\t_text - %#llx\n", _text - addr);302302-}303303-304295/* uncompress a compressed symbol. When this function is called, the best table305296 * might still be compressed itself, so the function needs to be recursive */306297static int expand_symbol(const unsigned char *data, int len, char *result)···479488 printf("\n");480489481490 output_label("kallsyms_relative_base");482482- output_address(relative_base);491491+ /* Provide proper symbols relocatability by their '_text' relativeness. */492492+ if (_text <= relative_base)493493+ printf("\tPTR\t_text + %#llx\n", relative_base - _text);494494+ else495495+ printf("\tPTR\t_text - %#llx\n", _text - relative_base);483496 printf("\n");484497485498 sort_symbols_by_name();