__gmon_start__ libc.so.6 putchar strcpy getgid stdout strerror fdopen memmove getopt_long snprintf ftello64 getenv __rawmemchr __strtol_internal qsort fgets memcpy glob perror getuid feof malloc isatty optarg _obstack_newchunk opterr __strtoul_internal fflush strncasecmp abort chmod __lxstat strrchr _obstack_begin calloc ctime strcat dcgettext fseek optind stdin fnmatch umask ferror strstr strncmp strncpy unlink getrusage strcasecmp realloc __strdup _IO_getc sscanf strncat fread sbrk memset ftell getopt_long_only strcmp sprintf fclose strcspn setlocale stderr fputc globfree fwrite access __xstat rewind __errno_location __fxstat bindtextdomain fopen _IO_putc fileno _IO_stdin_used _exit strspn __libc_start_main strchr fputs realpath fcntl fseeko64 vfprintf strpbrk fopen64 __environ GLIBC_2.2.3 GLIBC_2.3 GLIBC_2.1 GLIBC_2.0
tuv 5z ./89:;=>FGHIPQRSTUZ[\abmx &=^defghjklnopqrwxy x{|} 5 55%% 5%%%%%%%%% %%% % ~ %&'0127
D - 2 ? J > F H 9 3 e # R g ' 0 . # $ 3 % 5 & ) : ; V Y , 6 D F H 4 A K @ G I b d c % " $ I K 0 F G Q f T \ X [ N H U * 1 / + " ! 4 7 ; < 7 5 S ` W Z P 1 ( L I B 8 6 ( ) ^ M , & ] i E L e ) J a = * ' _ C - ) + z l k m } ~ j y w { o p j v x | n r q s t u ! 6 8 [ $ B = > ] : f = > Z f h E j ) * E ] & ^ F h F R f : E f ] F g E ' S _ ? ' F = > ? & 4 h = > g M = > i @ A j F I J C L M @ O P Q R S 9 V Z [ l ^ _ m ` a b c d e f g h i j k l m n o p q r s t u n S G o y z | } ? R p T q T U V W f r ? { | ? E s @ t F 4 5 @ u 4 @ 7 $ g M 5 6 7 4 w x f y { E [ T U F f E q r R F $ f q r E F v w s ! t + ! " < D " - E T / 0 U 1 W t " X Y # " 2 , - ; 3 \ ] ) ; . v # w x , - C } ~ 4 . < u x | u | 4 " % * 0 1 2 9 > a ` b c d e j D l m ~ E F G H I J K L M \ ] ^ _ ` a b c d K N , O P k , - n Q H R S T ! " # $ % & ' ( ) * + , - . / 0 ! " # $ % & ' ( ) * + , - \ ] ^ _ ` a b c d . / 0 N ( . / 3 = @ = = > > ? ? @ A B C D E F G H I J K L M @ N O P A B C D E F G H I J K L M N O P \ A ? e K R A . 5 T 5 6 5 Z n o q r j w 6 % & ' ( z / z 0 1 2 7 5 < 5 E 6 6 J K L M N O z c z _ V X c % c ' % g 3 4 9 m % @ 5 c % % % c % x % { | } % c t u v c D E % ! " % & ' % 6 8 0 1 2 % 7 < 3 4 @ A B C D E ! " J K L M N O % V % X % % ~ g H m x { | } i 6 3 4 % % % & ' 5 3 4 % % 0 1 2 % x 7 { | } < % x { | } E % % % % J K L M N O % % % 3 4 ] V % X % % 6 % @ A B C D % % 5 g D % m I 6 6 D [ I a b 0 m [ % & ' a b * 0 1 2 m 1 7 < % % 5 E J K L M N O % m V X a b e % _ U g % & ' m V 6 0 1 2 } ~ 5 7 % & < % % E J K L M N O % X V ` X ! " 6 % % g 5 5 % m % % % % & ' % % % 6 % 5 % 0 1 2 % % 7 % % % < _ E 6 J K L M N O ) * + , - V X 3 4 g m ! " % { W Y ] j { Z a b ! " . / ] 8 9 : ; = > Z F G H I P Q R S T U Z [ \ a b $ m . / x ~ 8 9 : ; = > F G H I P Q R S T U Z [ \ a b m x ! " ! " ! " ! " ! " ! " ! " ! " ! " ! " ! " ! " ! " ! " ! " ! " ! " ! " ! " ! " ! " ! " ! " ! " ! " ! " ! " ! " ! " ! " ! " % & $ & = = ^ d e f g h i j k l n o p q r ^ w x y d e f g h j k l n o p q r w x y ! " ! " ! " " % ! 5 6 #$&'()*+,-./01234789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ n 3 ; a \ $ , \ g x L ) M - . 1 2 5 6 M 7 9 : < = M H @ D a Q R X Y Z # \ A ^ g G < ? ) M M M S T [ c l m n o v w x } M M * K | 0 M q . , 8 ; > J P w V a M E M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M e p \ \ N > u R f u y z ~ j a u = = = = M X M M M M M M M ~ $ % s ( < P w M j # 5 ~ M . M M + W M > ^ @ V M 3 M 4 E t 0 _ I K L P Q R t C U L C k > W F g \ ] a b c S % g t 2 > > > > > > 2 ` , / * 0 1 > B G * H * S mk S S S S S S S S S S S T T T T T T T #T S 'T +T J x /T 3T 7T ;T ?T CT `U IT MT UT [T aT `T fT kT qT zT T T T T T T T T T T U #U =U KU SU ZU dU a * kU sU {U U d U U U B U U U U U U U U U U U U U V V V V #V ,V 4V CV MV RV a WV fU `V hV pV vV V T V J V V V V V V V V V V V V W W #W .W 6W CW GW KW OW SW WW [W _W w gW pW |W W W W W W W W W W W W X X X X #X &X 1X 4X 7X :X JX ]X aX oX }X X X X X X X X X Y Y Y S Y *Y 4Y EY QY UY aY mY |Y Y Y Y Y Y Y Z Z +Z 6Z 2Z :Z IZ PZ ZZ gZ wZ {Z Z Z Z Z Z Z Z Z Z Z ' Z Z Z Z Z Z Z [ [ [ [ [ %[ *[ .[ 2[ <[ L[ U[ i[ 8 m[ q[ |[ [ [ [ [ [ [ t u v i d d e k j o o o n f f f & & ^ ^ g h l q q p r w x = $ y F % G % \ % 8 % 8 % : % 9 ; Z % [ % H % = $ U % x % c % c % c % . 5 6 I % m % % 3 % 4 % 3 % 4 % 3 % 3 % 4 % 3 % 4 % 4 % 3 % % % % Y ] 3 % ] % W % ) * + , - a % b % > 5 6 V X % P % Q % Q % R % S T % J % ! " E % 7 K % L % M % g % & % & % 0 % 1 % 2 % < % ' % N % O % m % V % X % _ _ % & % ` % 5 6 D 5 6 [ 5 6 @ A B C D % % ( % ( % ' % U 5 6 / 5 6 _ % % ~ 5 6 5 6 z 5 6 z 5 6 z z | } | } { { x 5 6 x 5 6 | | } } x x # ( * , / 1 6 ; ? B G K P U Z _ d g j m r w z } ! % ( ) / 0 8 9 @ E H K L Q T U ] _ a c e k p u } " % ) * + 3 7 ; < @ B E G J O T X \ ^ c g h j l m p t u x { # % , 3 : ? D H I N O T U Z [ ] _ a b c d e f g { | } ~ " ( / 1 4 5 8 = B K M O S W X b c k m q s w y } ~ # # . / 5 6 7 8 9 : ; < = > ? A C E H J L N P R Q U X W [ _ c f i l o r v u z y ~ } $ % ) * / 4 5 : A B E G K M O Q S X _ a e g i k m o q s x x } ! # % ' ) + - / 1 3 5 7 9 ; = ? A C F H J L N P R T V X a c e g i k m s t x y } ~ % R U a j m v v \ \ \ \ %\ -\ 6\ >\ u > M i ! = Y u & ; P j & ; P e q J v @ e 5 H _ r - L k ) N ~ 8 G V g x > N Z f u X < b Y n % E V v ; b % L s 6 d / P q + L 5 V w % 5 J c u ! - > O ` l x & 5 E 9 E V x 4 S o # T ! N $end $undefined LNAME '=' OREQ ANDEQ RSHIFTEQ LSHIFTEQ DIVEQ MULTEQ MINUSEQ PLUSEQ '?' ':' OROR ANDAND '|' '^' '&' '<' '>' '+' '-' '*' '/' '%' UNARY '(' ALIGN_K BLOCK BIND SQUAD LONG SHORT SECTIONS PHDRS DATA_SEGMENT_ALIGN DATA_SEGMENT_RELRO_END DATA_SEGMENT_END SORT_BY_NAME SORT_BY_ALIGNMENT '{' '}' SIZEOF_HEADERS OUTPUT_FORMAT FORCE_COMMON_ALLOCATION OUTPUT_ARCH INHIBIT_COMMON_ALLOCATION SEGMENT_START INCLUDE MEMORY DEFSYMEND NOLOAD OVERLAY DEFINED TARGET_K SEARCH_DIR NEXT SIZEOF LOADADDR MAX_K MIN_K STARTUP HLL SYSLIB NOFLOAT NOCROSSREFS ORIGIN FILL LENGTH CREATE_OBJECT_SYMBOLS INPUT OUTPUT CONSTRUCTORS ALIGNMOD SUBALIGN PROVIDE PROVIDE_HIDDEN AS_NEEDED CHIP LIST ABSOLUTE NEWLINE ENDWORD ORDER NAMEWORD ASSERT_K PUBLIC ALIAS TRUNCATE INPUT_SCRIPT INPUT_MRI_SCRIPT INPUT_DEFSYM CASE EXTERN VERS_TAG VERS_IDENTIFIER GLOBAL VERSIONK INPUT_VERSION_SCRIPT KEEP ONLY_IF_RO ONLY_IF_RW SPECIAL EXCLUDE_FILE ',' ';' ')' '[' ']' '!' '~' $accept filename defsym_expr @1 mri_script_file @2 mri_script_lines mri_script_command @3 ordernamelist mri_load_name_list mri_abs_name_list casesymlist extern_name_list @4 ifile_list ifile_p1 @5 @6 input_list @7 @8 @9 sec_or_group_p1 statement_anywhere @10 wildcard_name wildcard_spec exclude_name_list file_NAME_list input_section_spec_no_keep input_section_spec @11 statement statement_list statement_list_opt length fill_exp fill_opt assign_op assignment opt_comma memory_spec_list memory_spec @12 origin_spec length_spec attributes_opt attributes_list attributes_string startup high_level_library high_level_library_NAME_list low_level_library low_level_library_NAME_list floating_point_support nocrossref_list mustbe_exp @13 memspec_at_opt opt_at opt_align opt_subalign sect_constraint @14 @15 @16 @17 @18 @19 @20 @21 @22 @23 @24 @25 atype opt_exp_with_type opt_exp_without_type opt_nocrossrefs memspec_opt phdr_opt overlay_section @26 @27 @28 phdrs phdr_list phdr @29 @30 phdr_type phdr_qualifiers phdr_val version_script_file @31 @32 vers_nodes vers_node verdep vers_tag vers_defns @33 @34 opt_semicolon Stack now token %s ( nterm %s ( Deleting %P%F:%S: %s in %s %P%F:%S: %s PT_NULL PT_LOAD PT_DYNAMIC PT_INTERP PT_NOTE PT_SHLIB PT_PHDR PT_TLS Starting parse Stack size increased to %lu Entering state %d Reading a token: Now at end of input. Next token is Shifting -> %s MRI style script fill value origin *default* PT_GNU_EH_FRAME PT_GNU_STACK FILEHDR FLAGS VERSION script global local extern syntax error Error: discarding Error: popping memory exhausted Cleanup: discarding lookahead Cleanup: popping %P:%s: file format not recognized; treating as linker script Reducing stack by rule %d (line %lu), %P%F: unrecognised keyword in MRI style script '%s' %X%P:%S: unknown phdr type `%s' (try integer literal) %X%P:%S: PHDRS syntax error at `%s' ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 # 6 7 8 9 : ; < # = > # ? # # # # @ # A # B # # # # # # # # # C # # D # # E # # # # F G H I J K L M J N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g W h W i j k l m n W W o W W W W W W W p W q J W r f f f f f W W W W W W W W W W s W W W W t u v w x y z { | } ~ W W W W W J J J J J J J J J J J y z J J J J J J J J 6 8 : < P = 9 7 > ; Q J J J J J J J J J J J J J J y z J J J J J @ A B C N O + J + J J , L , - M - 1 6 R S K T W J J J ) + F G H + X + / + Y + 0 < 9 = . [ \ : 1 + + Z + + ] y v 2 ? n + v + I J v z v n ( { n n ) * v _ D ` A n | v a B b D c C } n v d ~ n C v n G G v n ! ! H v ! n ! H G G v B + v + n n ! ! ! ! v n " ! ! ! ! + + + L + K + v v J n n + + + + + + 2 4 G G ! ! v v n n ! ! $ % v " ! ! n + + ! ! " $ $ } $ % $ & $ $ 5 ' + ( + ' ) * ' $ + $ + $ $ ' ' ' F F F F F F F F F F F F F F k k k k k k k k k k k k k k o o o o o o o o ! " # % & ' ( ) * + , - . / 0 $ 1 2 3 4 o o o o o o t t 5 6 8 9 : ; t u t v t t < w 7 = > x ? A w B C D E F @ G H w I J K L O M P t v t v t t N w Q R S T U w V W X Y Z w [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~ k k k k k k k k k k k k k k o o o o o o o o ! ! o o o o o o ! ! 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 D D D D D D D D D D D D D D D D ~ } | { z y x w v u t s r q p o n m l k j i h g f e D d c b a ` _ ^ ] \ [ Z Y X W V U T S R Q P O D D D 9 9 N 9 9 9 M 9 9 9 9 9 I 9 H G F C B A 9 9 9 9 9 @ ? > = < ; 8 7 6 5 4 3 2 1 0 / . - , + * ) ( ' & % $ # " 9 ! 9 9 9 D D D D D D D D D D D D D D D D D D D D j j j j l l l l l l l l l l l n n n n n n p p p p p p p p p p s s s s s s s s s s : : : : : : : : : : E E E E E E E E E E 9 9 9 9 9 9 9 9 9 9 D D D D D D D D D D } ~ | { z y x w v u t s r q p o n m l k j i h g f e d c b a ` _ ^ ] \ [ Z Y X W V U T S R Q P O N M L K J I H G F E A @ ? > = < ; : 9 8 7 6 3 1 0 / . - , + * ) ( ' & # m # r q m i h g f e ^ V U E ? 5 4 3 # 8 $ 8 ) ) $ Z / / + + . 0 G . 1 0 ) Z 1 V . ) 0 0 & & 2 7 - 2 - 9 2 ; P G V 7 - ] ] 9 & ; & - - 1 P : X : _ _ : : j k l m X B m u k j m l & & % % o = B o = = % % o = = = 2 o = = ~ u % = ~ b b | } b | } b ~ % % b b | % 3 c c d d d d c c d c c 4 d d e e f e f ; e e f X ; e 6 f f X 7 r r { { r { r r { { r 8 < > ? y y Q F F y y L L Q W y C # Z Z W # F F Z y y y A B C C z z t 3 $ v $ 3 t $ v z z V $ $ V D V u V _ _ u _ G I u z z L J D % % & & + + % M & K + % % & & + + N N N O / P / J N N N N N N / 0 Q 0 D 0 D / / R 0 S D G G K 0 0 U D D V W N N N N N N Y Y G Y G [ y z Y Y Y Y Y Y \ Y y z Y D Y ^ Y y z ` a b c d Y G e G f g h Y Y Y Y Y Y Y Y i Y j Y m n o p Y a a r s t a a a a a a a u w a x a z | a a } ~ a a a a a a a a a a x x x x x x x x x x x x x x ! " # $ % ' ( ) + * , * - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > A B C E F G H I J K L O P Q R S T U V W X Z [ \ ] ^ _ ` a d e f g h i j k l n o p q r s t u w x y { | ~ k k k k k k k k k k k k k k k k k k o o o o o o o o o o o o o o o o o o & . , + ) ( ' & $ # " : : : : : : : : : : : : : : : : : : : : E E E E E E E E E E E ~ | { z E E E E E y x w v u t s r q p o n m k j i h g f e d c a _ ^ \ [ Y X E W V T S R Q P O N L J H G E A @ ? > = < ; : E E E 9 8 6 5 4 2 1 0 ! / ! ! ! ! ! ! ! ! ! " . " " " " " " " " " # - # $ $ $ , + $ $ * $ % ) % % % % % % ' ( ' ' ' ' ' ' ' ' ' ( & ( ( ( ( ( ( ( ( ( ) % ) ) ) ) ) ) ) ) ) * $ * * * * * * * * * " ~ } | { x l i h g f e d c b a ` ^ ] \ [ Y U T S R P O N M K J I E C B A @ ? > = < : 9 8 7 6 5 4 3 2 1 . - , ( s n i h g ^ T S M L K E D C B ? > < 6 5 4 3 * " Q 2 $ u 0 v { x o 0 } ` \ P V ~ 3 | { ` z J e h p b . # K ~ & H C E S f c U [ > n i L H < 0 k j i h $ g ] , $ < I + c Q M O T ) j w 8 @ 0 , . s h _ A p l o Y X B P J 3 C A ; - I 9 F F 6 = 9 5 7 9 | ? 5 z 2 4 ( z 3 5 ) 7 7 + 8 ) $ 0 2 0 3 ! . 9 ! " < z P ~ 1 ] ^ r 6 . y y ~ y ] e v s { q } u | r t g t k m h e d q b _ ` ] o ] b f Y \ \ Q ; ; + ! . , ' h u s r k c d f y x l | u o r t q r l ~ k j | j l k x Y n a i a j o h k [ _ N c g V ] _ b ] 6 2 R O J V N 4 A 5 3 7 2 D 5 B # 8 4 6 9 . 3 / $ # # - . & ! u . 1 I P 6 e ! * 7 ? A K L > X K S h S Z p W i f ] d s z ^ r ~ ) ' ! , + % & * 2 2 ) 8 = < 4 < > 2 = 3 B $ 5 H ? J < @ O X K Q W T W X b [ h [ e ] \ p g s V r o s l q h f x ~ | | { | ( " + % * 4 ' / : ' 8 > 7 8 D 8 > D = 1 ? K ? A H > H L E T M V Z _ X k ` ` m j i i w w o m ^ } p a r t x r } v y ~ " - 8 ; D L W b m x Y a a a a a a Y Y ! " # $ $ $ $ % Y Y & a a a a a a a x & ! " # $ $ $ $ % & a a $ $ $ ' ( $ $ $ ) ' * ( $ $ $ $ $ & , + " # $ % - . ' ( ! n l * ) & , + " # $ % - . ' ( ! * ) n l y x " # $ % - . ( ! r r x x z { V D o m ; < V D o m | 9 3 ] f R g v [ @ Y c 9 3 f g v @ ] R [ Y c 5 2 e > X J I q \ Z 5 2 e J > X I q \ Z ~ ? 4 / d 0 H E W F = 4 d 0 E ? / H W F ? L p ^ ` t k S 1 L h t k p ^ ` S 1 : Q s : s Q } K K i j G i j G _ U _ U N w a w N a T C C T u B A u B A 8 8 b b 6 6 M M 7 7 O O P P ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q yylex > - A U i } 1 E Y m ! 5 I ] q % o # 7 K _ s ' ; O c w + ? S g { / C W k 3 G [ [ " * > R f z & : N b v ^ r 6 . U " = J 9 " o U U U U U U U U U [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ bad buffer in yy_scan_bytes() %F: macros nested too deeply redirect %F%P: EOF in comment \%03o ldlex.l in script in expression out of dynamic memory in yy_scan_buffer() out of dynamic memory in yy_scan_bytes() out of dynamic memory in yy_create_buffer() %F:includes nested too deeply fatal flex scanner internal error--end of buffer missed fatal error - scanner input buffer overflow %F%P: read in flex scanner failed %F%s: file not recognized: %E %P:%S: ignoring invalid character `%s'%s fatal flex scanner internal error--no action found KEYWORD Set architecture mri-script Read MRI format linker script dc dp Set start address export-dynamic Export all dynamic symbols EB Link big-endian objects Link little-endian objects auxiliary filter Ignored gpsize SIZE soname FILENAME dynamic-linker PROGRAM Search for library LIBNAME library-path DIRECTORY sysroot= Set emulation print-map nmagic Do not page align data no-omagic Set output file name Optimize output file Qy emit-relocs relocatable Generate relocatable output just-symbols strip-all Strip all symbols strip-debug Strip debugging symbols no-strip-discarded trace Trace file opens Read linker script unique [=SECTION] Ur Print version information discard-all Discard all local symbols discard-locals discard-none trace-symbol Trace mentions of SYMBOL start-group Start a group end-group End a group no-accept-unknown-input-arch no-add-needed no-as-needed assert Bdynamic Link against shared libraries dy call_shared Bstatic dn non_shared Bsymbolic no-check-sections cref Output cross reference table defsym SYMBOL=EXPRESSION Define a symbol [=STYLE] embedded-relocs Generate embedded relocs fatal-warnings Treat warnings as errors Call SYMBOL at unload-time force-exe-suffix no-gc-sections hash-size= Print option help Call SYMBOL at load-time Map Write a map file no-define-common Do not define Common storage no-demangle Do not demangle symbol names no-keep-memory no-undefined no-allow-shlib-undefined allow-multiple-definition Allow multiple definitions no-undefined-version Disallow undefined version default-symver Create default symbol version default-imported-symver no-warn-mismatch no-whole-archive Turn off --whole-archive noinhibit-exec noinhibit_exec nostdlib oformat Specify target of output file qmagic reduce-memory-overheads relax retain-symbols-file rpath rpath-link Create a shared library Bshareable pie pic-executable sort-common Sort common symbols by size sort_common sort-section name|alignment spare-dynamic-tags split-by-file [=SIZE] split-by-reloc [=COUNT] stats Print memory usage statistics target-help task-link Do task level linking traditional-format section-start SECTION=ADDRESS Set address of named section Tbss Set address of .bss section Tdata Set address of .data section Ttext Set address of .text section unresolved-symbols= dll-verbose version-script version-exports-section warn-common warn-constructors warn-multiple-gp warn-once warn-section-align warn-shared-textrel warn-unresolved-symbols error-unresolved-symbols wrap -G --shared --library=%s %P: unrecognized option '%s' default nodefinitions nosymbolic pure-text %P%F: invalid number `%s' Usage: %s [options] file... Options: %s-%c %s-%s%s @FILE Read options from FILE %s: supported targets: %s: supported emulations: Report bugs to %s ignore-all report-all ignore-in-object-files ignore-in-shared-libs %P%F: bad -rpath option %s:%s %P%F: -shared not supported %P%F: -pie not supported .data .text P, Shared library control for HP/UX compatibility Specify target for following input files Force common symbols to be defined Auxiliary filter for shared object symbol table Filter for shared object symbol table Small data size (if no size, same as --shared) Set internal name of shared library Set PROGRAM as the dynamic linker to use Add DIRECTORY to library search path Override the default sysroot location Print map file on standard output Do not page align data, do not make text readonly Page align data, make text readonly Ignored for SVR4 compatibility Generate relocations in final output Just link symbols (if directory, same as --rpath) Strip symbols in discarded sections Do not strip symbols in discarded sections Start with undefined reference to SYMBOL Don't merge input [SECTION | orphan] sections Build global constructor/destructor tables Print version and emulation information Discard temporary local symbols (default) Don't discard any local symbols Default search path for Solaris compatibility Accept input files whose architecture cannot be determined Reject input files whose architecture is unknown Set DT_NEEDED tags for DT_NEEDED entries in following dynamic libs Do not set DT_NEEDED tags for DT_NEEDED entries in following dynamic libs Only set DT_NEEDED for following dynamic libs if used Always set DT_NEEDED for following dynamic libs Ignored for SunOS compatibility Do not link against shared libraries Bind global references locally Check section addresses for overlaps (default) Do not check section addresses for overlaps Demangle symbol names [using STYLE] Force generation of file with .exe suffix Remove unused sections (on some targets) Don't remove unused sections (default) Set default hash table size close to Use less memory and more disk I/O Do not allow unresolved references in object files Allow unresolved references in shared libaries Do not allow unresolved references in shared libs Create default symbol version for imported symbols Don't warn about mismatched input files Create an output file even if errors occur Only use library directories specified on the command line Ignored for Linux compatibility Reduce memory overheads, possibly taking much longer Relax branches on certain targets Keep only symbols listed in FILE Set runtime shared library search path Set link time shared library search path Create a position independent executable Sort sections by name or maximum alignment How many tags to reserve in .dynamic section Split output sections every SIZE octets Split output sections every COUNT relocs Display target specific options Use same format as native linker How to handle unresolved symbols. is: ignore-all, report-all, ignore-in-object-files, ignore-in-shared-libs Output lots of information during link Read version information script Take export symbols list from .exports, using SYMBOL as the version. Warn about duplicate common symbols Warn if global constructors/destructors are seen Warn if the multiple GP values are used Warn only once per undefined symbol Warn if start of section changes due to alignment Warn if shared object has DT_TEXTREL Report unresolved symbols as warnings Report unresolved symbols as errors Include all objects from following archives Use wrapper functions for SYMBOL %P%F: invalid hex number `%s' %P%F: use the --help option for usage information %P%F: unrecognized -a option `%s' %P%F: unrecognized -assert option `%s' %F%P: unknown demangling style `%s' %s: emulation specific options: %P%F: bad --unresolved-symbols option: %s %P%F: invalid section sorting option: %s %P%F: invalid argument to option "--section-start" %P%F: missing argument(s) to option "--section-start" %P%F: may not nest groups (--help for usage) %P%F: group ended before it began (--help for usage) %P%X: --hash-size needs a numeric argument a 7 C A A U ? k b b P c c [ y d d $ | d .) e e E f f ' H F F ' x g G G h & I 5 g l l P = X L L e o H m M M p n n N N o o O q q r r i $ R R 4 1 s s ; M S S Y t h q t t +] T T S u u > 8 v V @ x x X X h y y > , Y m* E ( ( Q _ ) ) i x u T $ 7 T t ! > E W g p Z > < h g > ! : > O ` } D t % @ O m 0 p , 2 F m* L m* 8 W o z d ~ * $ B @ N > X n ` # C ? K , Z > L r ~ < p > t L \ 6 ! > m m ! F N ! N | d C . b ~ ! , ! [ F } j O 4 R : v A , } h P ; ) o { i W E 3 Z E & -l *ABS* /DISCARD/ %B: file not recognized: %E %B: matching formats: %F %I %P%F: target %s not found 0x%V %T 0x%V %W %B %W (size before relaxing) Fail with %d SORT (CONSTRUCTORS) CONSTRUCTORS SORT( EXCLUDE_FILE(%s ) Address of section %s set to CREATE_OBJECT_SYMBOLS FILL mask 0x 0x%V %W %s 0x%v 0x%V %W RELOC %s %s+ *fill* 0x%V %W %s 0x%V %W load base load address 0x%V [0x%V] [unresolved] *undef* TARGET(%s) OUTPUT(%s LOAD %s START GROUP END GROUP Discarded input sections Memory Configuration Attributes Length Origin Name %-16s %-18s %-18s %s %-16s %08lx 0x%s ! %F%P: invalid data statement Allocating common symbols subsection alignment %P%F: multiple STARTUP files __start_%s __stop_%s program header type __load_start_%s __load_stop_%s C++ Java ?*[ ,: .exports phdr flags phdr load address .startof.%s .sizeof.%s *?[ /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/ld/ldlang.c %P:%S: warning: redeclaration of memory region '%s' %P:%S: warning: memory region %s not declared %P%F: failed creating section `%s': %E %P%F: can not create hash table: %E %P%F: Illegal use of `%s' section %P%F: output format %s cannot represent section called %s %F%B: file not recognized: %E %F%B: member %B in archive is not an object %F%B: could not read symbols: %E %P: warning: could not find any targets that match endianness requirement %P%F: cannot open output file %s: %E %P%F:%s: can not make object file: %E %P%F:%s: can not set architecture: %E %P%F: bfd_hash_lookup failed creating symbol %s %P%F: bfd_hash_allocate failed creating symbol %s %P%F: bfd_link_hash_lookup failed: %E Linker script and memory map %X%P: address 0x%v of %B section %s is not within region %s %X%P: region %s is full (%B section %s) %F%S: non constant or forward reference address expression for section %s %P%X: Internal error on COFF shared library section %s %P%F: error: no memory region specified for loadable section `%s' %P: warning: no memory region specified for loadable section `%s' %P: warning: changing start of section %s by %lu bytes %P%F: can't relax section: %E %F%P: invalid reloc statement Common symbol size file %P%F: invalid syntax in flags %X%P:%S: section has both a load address and a load region %X%P: unknown language `%s' in version information %X%P: anonymous version tag cannot be combined with other version tags %X%P: duplicate version tag `%s' %X%P: duplicate expression `%s' in version information %X%P: unable to find version dependency `%s' %P%F: Failed to create hash table %P%F: Relocatable linking with relocations from format %s (%B) to format %s (%B) is not supported %P: warning: %s architecture of input file `%B' is incompatible with %s output %P%X: failed to merge target specific data of file %B %X%P: unable to read .exports section contents %F%P: bfd_record_phdr failed: %E %X%P: section `%s' assigned to non-existent phdr `%s' %X%P: section %s [%V -> %V] overlaps section %s [%V -> %V] %P%F:%s: can't set start address %P%F: can't set start address %P: warning: cannot find entry symbol %s; defaulting to %V %P: warning: cannot find entry symbol %s; not setting start address o y y y y y y y y y y y o c ] . . Q . . load_symbols q' ' ' ' ' ' ' ' print_data_statement * + + ^/ . 0 / / + #, / !/ , j- Q- - #0 0 0 0 0 lang_size_sections_1 8 9 9 9 Z: : B; k< < b; 9 9 ; ; 9 %< ? ? )@ 0@ 7@ lang_do_assignments_1 FF F F F G 8G F cG xG G F F H (H F 0H H H H H H K WK WK WK WK WK WK WK K WK WK K WK WK WK WK WK K WK WK WK WK K K WK WK WK WK WK WK WK WK K WK WK WK WK WK WK WK K WK WK K WK WK WK WK WK K WK WK WK WK K K T BU T T JU JU JU JU JU JU T T JU T T JU compare_section *n |n o n n o o o No o o nn o o o p Kq 9q p 9q aq 9q 9q 9q 9q 9q q 9q 9q q 9q *r IEEE ieee COFF coff-m68k %P%F: unknown format type %s mri_alias /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/ld/mri.c %P%X: Different relocs used in set %s %P%X: Different object file formats composing set %s %P%X: %s does not support reloc %s for set %s %P%X: Unsupported size %d for set %s Set Symbol %G a.out %s/ldscripts --sysroot= i686-unknown-linux-gnu COLLECT_NO_DEMANGLE _init _fini LDEMULATION elf_i386 -m %P%F: missing argument to -m -mips1 -mips2 -mips3 -mips4 -mips5 -mips32 -mips32r2 -mips64 -mips64r2 -m486 using external linker script: using internal linker script: %P%F: no input files %P: mode %s %F%B: final close failed: %E .exe .dll %P: Error writing file `%s' %P: Error closing file `%s' %s: data size %ld %X%P: %s: %E %s(%s) %B (%T) %D: first defined here %B: warning: common is here %B: warning: defined here using multiple gp values warning: %C: %s%s %P: %s%s %B: %s%s %X %X%C: +%v %B: reference to %s %B: definition of %s " 0 0 A A X reloc_overflow /usr/local/google/home/dmitriyz/toolchain/share/locale /usr/local/google/home/dmitriyz/toolchain/bin /usr/local/google/home/dmitriyz/toolchain/i686-unknown-linux-gnu/bin %P%F: this linker was not configured to use sysroots %X%P: can't set BFD default target to `%s': %E %P%F: --gc-sections and -r may not be used together %P%F: --relax and -r may not be used together %P%F: -r and -shared may not be used together %P%F: -F may not be used without -shared %P%F: -f may not be used without -shared /usr/local/google/home/dmitriyz/toolchain/i686-unknown-linux-gnu/lib ================================================== %P%F: cannot open map file %s: %E %P: link errors found, deleting executable `%s' %X%P: unable to open for source of copy `%s' %X%P: unable to open for destination of copy `%s' %s: total time in link: %ld.%06ld %P%F: bfd_hash_table_init failed: %E %P%F: bfd_hash_lookup failed: %E %X%P: error: duplicate retain-symbols-file %P%F: bfd_hash_lookup for insertion failed: %E %P: `-retain-symbols-file' overrides `-s' and `-S' Archive member included because of file (symbol) %X%C: multiple definition of `%T' %P: Disabling relaxation: it will not work with multiple definitions /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/ld/ldmain.c %B: warning: definition of `%T' overriding common %B: warning: common of `%T' overridden by definition %B: warning: common of `%T' overridden by larger common %B: warning: larger common is here %B: warning: common of `%T' overriding smaller common %B: warning: smaller common is here %B: warning: multiple common of `%T' %B: warning: previous common is here %P: warning: global constructor %s used %P%F: BFD backend error: BFD_RELOC_CTOR unsupported %B%F: could not read symbols: %E %B%F: could not read relocs: %E %F%P: bfd_hash_table_init failed: %E %F%P: bfd_hash_lookup failed: %E %X%C: undefined reference to `%T' %C: warning: undefined reference to `%T' %X%D: more undefined references to `%T' follow %D: warning: more undefined references to `%T' follow %X%B: undefined reference to `%T' %B: warning: undefined reference to `%T' %X%B: more undefined references to `%T' follow %B: warning: more undefined references to `%T' follow additional relocation overflows omitted from the output relocation truncated to fit: %s against undefined symbol `%T' relocation truncated to fit: %s against symbol `%T' defined in %A section in %B relocation truncated to fit: %s against `%T' %X%C: dangerous relocation: %s %X%C: reloc refers to symbol `%T' which is not being output build_link_order ! E i /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/ld/ldwrite.c %P%F: bfd_new_link_order failed %F%P: cannot create split section name for %s %F%P: clone section failed: %E .stab $GDB_STRINGS$ $GDB_SYMBOLS$ %F%P: final link failed: %E += -= *= /= <<= >>= &= |= || && == != << >> %X%P: %s %F%S %% by zero %F%S / by zero NULL TREE %B: %s+0x%v PROVIDE (%s, ASSERT ( , %s) (%s) ? S &V UT aT `T fT kT qT & T - SU 4 sU 5 6 U 7 d 8 U 9 U : U ; B < U = U b ! T " T # T E U G U + =U o I I I u 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 % 0 0 0 0 0 ; r 0 0 0 0 0 0 0 0 0 c & o /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/ld/ldexp.c %F%S can not PROVIDE assignment to location counter %F%S invalid assignment to location counter %F%S assignment to location counter invalid outside of SECTION %F%S cannot move location counter backwards (from %V to %V) %P%F:%s: hash creation failed %X%S: unresolvable symbol `%s' referenced in expression %F%S: undefined symbol `%s' referenced in expression %F%S: undefined MEMORY region `%s' referenced in expression %F%S nonconstant expression for %s %F%S non constant expression for %s GNUTARGET %S SYSLIB ignored %S HLL ignored Supported emulations: %s: %P: unrecognised emulation mode: %s no emulation specific options. GNU ld version %s 2.17 Supported emulations: %s Copyright 2005 Free Software Foundation, Inc. This program is free software; you may redistribute it under the terms of the GNU General Public License. This program has absolutely no warranty. 0x%s no symbol %s generated --defsym %s %s:%u built in linker script:%u %s+0x%v (type %s) %B%F: could not read symbols %B: In function `%T': %s: %T %B:(%A+0x%v) %%%c %F%P: internal error %s %d %P%F: please report this bug F F F F F F F F F F F F F F F F F F F F F F F F F F F n J ; F " F F F F F F F S F F F F F F F F F F F F F F F F F F F 1 F F F F F F F q %P: internal error: aborting at %s line %d in %s %P: internal error: aborting at %s line %d cannot find script file %s opened script file %s attempt to open %s failed attempt to open %s succeeded %s%s%s%s%s%s %F%P: %s: No such file: %E .a %F%P: cannot find %s %P%F: cannot open linker script file %s: %E %F%P: invalid BFD target `%s' %P: skipping incompatible %s when searching for %s %F%P: attempted static link of dynamic object `%s' %F%P: %s (%s): No such file: %E %F%P: cannot find %s inside %s %P%F: cannot represent machine `%s' %X%P: bfd_hash_table_init of cref table failed: %E %X%P: cref_hash_lookup failed: %E /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/ld/ldcref.c %P: symbol `%T' missing from main hash table %B%F: could not read symbols; %E %X%C: prohibited cross reference from %s to `%T' in %s Cross Reference Table Symbol File No symbols elf32-i386 .so. libc.so %F%P:%B: bfd_stat failed: %E found %s at %s include %s needed by %B LD_RUN_PATH LD_LIBRARY_PATH /etc/ld.so.conf %s/%s .gnu.warning eelf_i386.c %s/lib%s%s.so .rodata .interp .sdata .rela.dyn .rel.dyn .rel .gnu.warning. .note disable-new-dtags enable-new-dtags eh-frame-hdr exclude-libs Bgroup initfirst interpose loadfltr nodefaultlib nodelete nodlopen nodump muldefs nocombreloc nocopyreloc noexecstack norelro %P%F: --just-symbols may not be used on DSO: %B %P: warning: %s, needed by %B, may conflict with %s %F%P:%B: bfd_elf_get_bfd_needed_list failed: %E /usr/local/google/home/dmitriyz/toolchain/etc/ld.so.conf %P: warning: %s, needed by %B, not found (try using -rpath or -rpath-link) %P%F: failed to record assignment to %s: %E %P%F: failed to set dynamic section sizes: %E %F%B: Can't read contents of section .gnu.warning: %E %F%P: place_orphan failed: %E /* Script for ld -Ur: link w/out relocation, do create constructors */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) /* For some reason, the Solaris linker makes bad executables if gld -r is used and the intermediate file has sections starting at non-zero addresses. Could be a Solaris ld bug, could be a GNU ld bug. But for now assigning the zero vmas works. */ SECTIONS { /* Read-only sections, merged into text segment: */ .interp 0 : { *(.interp) } .hash 0 : { *(.hash) } .dynsym 0 : { *(.dynsym) } .dynstr 0 : { *(.dynstr) } .gnu.version 0 : { *(.gnu.version) } .gnu.version_d 0: { *(.gnu.version_d) } .gnu.version_r 0: { *(.gnu.version_r) } .rel.init 0 : { *(.rel.init) } .rela.init 0 : { *(.rela.init) } .rel.text 0 : { *(.rel.text) } .rela.text 0 : { *(.rela.text) } .rel.fini 0 : { *(.rel.fini) } .rela.fini 0 : { *(.rela.fini) } .rel.rodata 0 : { *(.rel.rodata) } .rela.rodata 0 : { *(.rela.rodata) } .rel.data.rel.ro 0 : { *(.rel.data.rel.ro) } .rela.data.rel.ro 0 : { *(.rela.data.rel.ro) } .rel.data 0 : { *(.rel.data) } .rela.data 0 : { *(.rela.data) } .rel.tdata 0 : { *(.rel.tdata) } .rela.tdata 0 : { *(.rela.tdata) } .rel.tbss 0 : { *(.rel.tbss) } .rela.tbss 0 : { *(.rela.tbss) } .rel.ctors 0 : { *(.rel.ctors) } .rela.ctors 0 : { *(.rela.ctors) } .rel.dtors 0 : { *(.rel.dtors) } .rela.dtors 0 : { *(.rela.dtors) } .rel.got 0 : { *(.rel.got) } .rela.got 0 : { *(.rela.got) } .rel.bss 0 : { *(.rel.bss) } .rela.bss 0 : { *(.rela.bss) } .rel.plt 0 : { *(.rel.plt) } .rela.plt 0 : { *(.rela.plt) } .init 0 : { KEEP (*(.init)) } =0x90909090 .plt 0 : { *(.plt) } .text 0 : { *(.text .stub) KEEP (*(.text.*personality*)) /* .gnu.warning sections are handled specially by elf32.em. */ *(.gnu.warning) } =0x90909090 .fini 0 : { KEEP (*(.fini)) } =0x90909090 .rodata 0 : { *(.rodata) } .rodata1 0 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) } .eh_frame 0 : ONLY_IF_RO { KEEP (*(.eh_frame)) } .gcc_except_table 0 : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ /* Exception handling */ .eh_frame 0 : ONLY_IF_RW { KEEP (*(.eh_frame)) } .gcc_except_table 0 : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } /* Thread Local Storage sections */ .tdata 0 : { *(.tdata) } .tbss 0 : { *(.tbss) } .preinit_array 0 : { KEEP (*(.preinit_array)) } .init_array 0 : { KEEP (*(SORT(.init_array.*))) KEEP (*(.init_array)) } .fini_array 0 : { KEEP (*(.fini_array)) KEEP (*(SORT(.fini_array.*))) } .jcr 0 : { KEEP (*(.jcr)) } .dynamic 0 : { *(.dynamic) } .got 0 : { *(.got) } .got.plt 0 : { *(.got.plt) } .data 0 : { *(.data) KEEP (*(.gnu.linkonce.d.*personality*)) SORT(CONSTRUCTORS) } .data1 0 : { *(.data1) } .bss 0 : { *(.dynbss) *(.bss) *(COMMON) /* Align here to ensure that the .bss section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we don't pad the .data section. */ } /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 : { *(.comment) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1 */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2 */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2 */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } } /* Script for ld -r: link without relocation */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) /* For some reason, the Solaris linker makes bad executables if gld -r is used and the intermediate file has sections starting at non-zero addresses. Could be a Solaris ld bug, could be a GNU ld bug. But for now assigning the zero vmas works. */ SECTIONS { /* Read-only sections, merged into text segment: */ .interp 0 : { *(.interp) } .hash 0 : { *(.hash) } .dynsym 0 : { *(.dynsym) } .dynstr 0 : { *(.dynstr) } .gnu.version 0 : { *(.gnu.version) } .gnu.version_d 0: { *(.gnu.version_d) } .gnu.version_r 0: { *(.gnu.version_r) } .rel.init 0 : { *(.rel.init) } .rela.init 0 : { *(.rela.init) } .rel.text 0 : { *(.rel.text) } .rela.text 0 : { *(.rela.text) } .rel.fini 0 : { *(.rel.fini) } .rela.fini 0 : { *(.rela.fini) } .rel.rodata 0 : { *(.rel.rodata) } .rela.rodata 0 : { *(.rela.rodata) } .rel.data.rel.ro 0 : { *(.rel.data.rel.ro) } .rela.data.rel.ro 0 : { *(.rela.data.rel.ro) } .rel.data 0 : { *(.rel.data) } .rela.data 0 : { *(.rela.data) } .rel.tdata 0 : { *(.rel.tdata) } .rela.tdata 0 : { *(.rela.tdata) } .rel.tbss 0 : { *(.rel.tbss) } .rela.tbss 0 : { *(.rela.tbss) } .rel.ctors 0 : { *(.rel.ctors) } .rela.ctors 0 : { *(.rela.ctors) } .rel.dtors 0 : { *(.rel.dtors) } .rela.dtors 0 : { *(.rela.dtors) } .rel.got 0 : { *(.rel.got) } .rela.got 0 : { *(.rela.got) } .rel.bss 0 : { *(.rel.bss) } .rela.bss 0 : { *(.rela.bss) } .rel.plt 0 : { *(.rel.plt) } .rela.plt 0 : { *(.rela.plt) } .init 0 : { KEEP (*(.init)) } =0x90909090 .plt 0 : { *(.plt) } .text 0 : { *(.text .stub) KEEP (*(.text.*personality*)) /* .gnu.warning sections are handled specially by elf32.em. */ *(.gnu.warning) } =0x90909090 .fini 0 : { KEEP (*(.fini)) } =0x90909090 .rodata 0 : { *(.rodata) } .rodata1 0 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) } .eh_frame 0 : ONLY_IF_RO { KEEP (*(.eh_frame)) } .gcc_except_table 0 : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ /* Exception handling */ .eh_frame 0 : ONLY_IF_RW { KEEP (*(.eh_frame)) } .gcc_except_table 0 : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } /* Thread Local Storage sections */ .tdata 0 : { *(.tdata) } .tbss 0 : { *(.tbss) } .preinit_array 0 : { KEEP (*(.preinit_array)) } .init_array 0 : { KEEP (*(SORT(.init_array.*))) KEEP (*(.init_array)) } .fini_array 0 : { KEEP (*(.fini_array)) KEEP (*(SORT(.fini_array.*))) } .jcr 0 : { KEEP (*(.jcr)) } .dynamic 0 : { *(.dynamic) } .got 0 : { *(.got) } .got.plt 0 : { *(.got.plt) } .data 0 : { *(.data) KEEP (*(.gnu.linkonce.d.*personality*)) } .data1 0 : { *(.data1) } .bss 0 : { *(.dynbss) *(.bss) *(COMMON) /* Align here to ensure that the .bss section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we don't pad the .data section. */ } /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 : { *(.comment) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1 */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2 */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2 */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } } /* Script for -N: mix text and data on same page; don't align data */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("/usr/local/google/home/dmitriyz/toolchain/i686-unknown-linux-gnu/lib"); SEARCH_DIR("/usr/local/google/home/dmitriyz/toolchain/lib"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = 0x08048000); . = 0x08048000 + SIZEOF_HEADERS; .interp : { *(.interp) } .hash : { *(.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.init : { *(.rel.init) } .rela.init : { *(.rela.init) } .rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) } .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } .rel.fini : { *(.rel.fini) } .rela.fini : { *(.rela.fini) } .rel.rodata : { *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) } .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } .rel.data.rel.ro : { *(.rel.data.rel.ro* .rel.gnu.linkonce.d.rel.ro.*) } .rela.data.rel.ro : { *(.rela.data.rel.ro* .rela.gnu.linkonce.d.rel.ro.*) } .rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) } .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } .rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) } .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } .rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) } .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } .rel.ctors : { *(.rel.ctors) } .rela.ctors : { *(.rela.ctors) } .rel.dtors : { *(.rel.dtors) } .rela.dtors : { *(.rela.dtors) } .rel.got : { *(.rel.got) } .rela.got : { *(.rela.got) } .rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) } .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rel.plt : { *(.rel.plt) } .rela.plt : { *(.rela.plt) } .init : { KEEP (*(.init)) } =0x90909090 .plt : { *(.plt) } .text : { *(.text .stub .text.* .gnu.linkonce.t.*) KEEP (*(.text.*personality*)) /* .gnu.warning sections are handled specially by elf32.em. */ *(.gnu.warning) } =0x90909090 .fini : { KEEP (*(.fini)) } =0x90909090 PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = .; /* Exception handling */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } /* Thread Local Storage sections */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT(.init_array.*))) KEEP (*(.init_array)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(.fini_array)) KEEP (*(SORT(.fini_array.*))) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin*.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend*.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin*.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend*.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) } .got.plt : { *(.got.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) KEEP (*(.gnu.linkonce.d.*personality*)) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that the .bss section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we don't pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 : { *(.comment) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1 */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2 */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2 */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /DISCARD/ : { *(.note.GNU-stack) } } /* Script for -n: mix text and data on same page */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("/usr/local/google/home/dmitriyz/toolchain/i686-unknown-linux-gnu/lib"); SEARCH_DIR("/usr/local/google/home/dmitriyz/toolchain/lib"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = 0x08048000); . = 0x08048000 + SIZEOF_HEADERS; .interp : { *(.interp) } .hash : { *(.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.init : { *(.rel.init) } .rela.init : { *(.rela.init) } .rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) } .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } .rel.fini : { *(.rel.fini) } .rela.fini : { *(.rela.fini) } .rel.rodata : { *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) } .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } .rel.data.rel.ro : { *(.rel.data.rel.ro* .rel.gnu.linkonce.d.rel.ro.*) } .rela.data.rel.ro : { *(.rela.data.rel.ro* .rela.gnu.linkonce.d.rel.ro.*) } .rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) } .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } .rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) } .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } .rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) } .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } .rel.ctors : { *(.rel.ctors) } .rela.ctors : { *(.rela.ctors) } .rel.dtors : { *(.rel.dtors) } .rela.dtors : { *(.rela.dtors) } .rel.got : { *(.rel.got) } .rela.got : { *(.rela.got) } .rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) } .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rel.plt : { *(.rel.plt) } .rela.plt : { *(.rela.plt) } .init : { KEEP (*(.init)) } =0x90909090 .plt : { *(.plt) } .text : { *(.text .stub .text.* .gnu.linkonce.t.*) KEEP (*(.text.*personality*)) /* .gnu.warning sections are handled specially by elf32.em. */ *(.gnu.warning) } =0x90909090 .fini : { KEEP (*(.fini)) } =0x90909090 PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = ALIGN (0x1000) - ((0x1000 - .) & (0x1000 - 1)); . = DATA_SEGMENT_ALIGN (0x1000, 0x1000); /* Exception handling */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } /* Thread Local Storage sections */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT(.init_array.*))) KEEP (*(.init_array)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(.fini_array)) KEEP (*(SORT(.fini_array.*))) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin*.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend*.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin*.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend*.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) } . = DATA_SEGMENT_RELRO_END (12, .); .got.plt : { *(.got.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) KEEP (*(.gnu.linkonce.d.*personality*)) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that the .bss section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we don't pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 : { *(.comment) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1 */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2 */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2 */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /DISCARD/ : { *(.note.GNU-stack) } } /* Script for -pie -z combreloc -z now -z relro: position independent executable, combine & sort relocs */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("/usr/local/google/home/dmitriyz/toolchain/i686-unknown-linux-gnu/lib"); SEARCH_DIR("/usr/local/google/home/dmitriyz/toolchain/lib"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ . = 0 + SIZEOF_HEADERS; .interp : { *(.interp) } .hash : { *(.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.dyn : { *(.rel.init) *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) *(.rel.fini) *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) *(.rel.data.rel.ro* .rel.gnu.linkonce.d.rel.ro.*) *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) *(.rel.ctors) *(.rel.dtors) *(.rel.got) *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rel.plt : { *(.rel.plt) } .rela.plt : { *(.rela.plt) } .init : { KEEP (*(.init)) } =0x90909090 .plt : { *(.plt) } .text : { *(.text .stub .text.* .gnu.linkonce.t.*) KEEP (*(.text.*personality*)) /* .gnu.warning sections are handled specially by elf32.em. */ *(.gnu.warning) } =0x90909090 .fini : { KEEP (*(.fini)) } =0x90909090 PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = ALIGN (0x1000) - ((0x1000 - .) & (0x1000 - 1)); . = DATA_SEGMENT_ALIGN (0x1000, 0x1000); /* Exception handling */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } /* Thread Local Storage sections */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT(.init_array.*))) KEEP (*(.init_array)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(.fini_array)) KEEP (*(SORT(.fini_array.*))) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin*.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend*.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin*.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend*.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.got) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) KEEP (*(.gnu.linkonce.d.*personality*)) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that the .bss section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we don't pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 : { *(.comment) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1 */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2 */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2 */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /DISCARD/ : { *(.note.GNU-stack) } } /* Script for -pie -z combreloc: position independent executable, combine & sort relocs */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("/usr/local/google/home/dmitriyz/toolchain/i686-unknown-linux-gnu/lib"); SEARCH_DIR("/usr/local/google/home/dmitriyz/toolchain/lib"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ . = 0 + SIZEOF_HEADERS; .interp : { *(.interp) } .hash : { *(.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.dyn : { *(.rel.init) *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) *(.rel.fini) *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) *(.rel.data.rel.ro* .rel.gnu.linkonce.d.rel.ro.*) *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) *(.rel.ctors) *(.rel.dtors) *(.rel.got) *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rel.plt : { *(.rel.plt) } .rela.plt : { *(.rela.plt) } .init : { KEEP (*(.init)) } =0x90909090 .plt : { *(.plt) } .text : { *(.text .stub .text.* .gnu.linkonce.t.*) KEEP (*(.text.*personality*)) /* .gnu.warning sections are handled specially by elf32.em. */ *(.gnu.warning) } =0x90909090 .fini : { KEEP (*(.fini)) } =0x90909090 PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = ALIGN (0x1000) - ((0x1000 - .) & (0x1000 - 1)); . = DATA_SEGMENT_ALIGN (0x1000, 0x1000); /* Exception handling */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } /* Thread Local Storage sections */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT(.init_array.*))) KEEP (*(.init_array)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(.fini_array)) KEEP (*(SORT(.fini_array.*))) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin*.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend*.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin*.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend*.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) } . = DATA_SEGMENT_RELRO_END (12, .); .got.plt : { *(.got.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) KEEP (*(.gnu.linkonce.d.*personality*)) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that the .bss section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we don't pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 : { *(.comment) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1 */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2 */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2 */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /DISCARD/ : { *(.note.GNU-stack) } } /* Script for ld -pie: link position independent executable */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("/usr/local/google/home/dmitriyz/toolchain/i686-unknown-linux-gnu/lib"); SEARCH_DIR("/usr/local/google/home/dmitriyz/toolchain/lib"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ . = 0 + SIZEOF_HEADERS; .interp : { *(.interp) } .hash : { *(.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.init : { *(.rel.init) } .rela.init : { *(.rela.init) } .rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) } .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } .rel.fini : { *(.rel.fini) } .rela.fini : { *(.rela.fini) } .rel.rodata : { *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) } .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } .rel.data.rel.ro : { *(.rel.data.rel.ro* .rel.gnu.linkonce.d.rel.ro.*) } .rela.data.rel.ro : { *(.rela.data.rel.ro* .rela.gnu.linkonce.d.rel.ro.*) } .rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) } .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } .rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) } .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } .rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) } .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } .rel.ctors : { *(.rel.ctors) } .rela.ctors : { *(.rela.ctors) } .rel.dtors : { *(.rel.dtors) } .rela.dtors : { *(.rela.dtors) } .rel.got : { *(.rel.got) } .rela.got : { *(.rela.got) } .rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) } .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rel.plt : { *(.rel.plt) } .rela.plt : { *(.rela.plt) } .init : { KEEP (*(.init)) } =0x90909090 .plt : { *(.plt) } .text : { *(.text .stub .text.* .gnu.linkonce.t.*) KEEP (*(.text.*personality*)) /* .gnu.warning sections are handled specially by elf32.em. */ *(.gnu.warning) } =0x90909090 .fini : { KEEP (*(.fini)) } =0x90909090 PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = ALIGN (0x1000) - ((0x1000 - .) & (0x1000 - 1)); . = DATA_SEGMENT_ALIGN (0x1000, 0x1000); /* Exception handling */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } /* Thread Local Storage sections */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT(.init_array.*))) KEEP (*(.init_array)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(.fini_array)) KEEP (*(SORT(.fini_array.*))) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin*.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend*.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin*.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend*.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) } . = DATA_SEGMENT_RELRO_END (12, .); .got.plt : { *(.got.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) KEEP (*(.gnu.linkonce.d.*personality*)) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that the .bss section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we don't pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 : { *(.comment) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1 */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2 */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2 */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /DISCARD/ : { *(.note.GNU-stack) } } /* Script for --shared -z combreloc -z now -z relro: shared library, combine & sort relocs */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("/usr/local/google/home/dmitriyz/toolchain/i686-unknown-linux-gnu/lib"); SEARCH_DIR("/usr/local/google/home/dmitriyz/toolchain/lib"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ . = 0 + SIZEOF_HEADERS; .hash : { *(.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.dyn : { *(.rel.init) *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) *(.rel.fini) *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) *(.rel.data.rel.ro* .rel.gnu.linkonce.d.rel.ro.*) *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) *(.rel.ctors) *(.rel.dtors) *(.rel.got) *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rel.plt : { *(.rel.plt) } .rela.plt : { *(.rela.plt) } .init : { KEEP (*(.init)) } =0x90909090 .plt : { *(.plt) } .text : { *(.text .stub .text.* .gnu.linkonce.t.*) KEEP (*(.text.*personality*)) /* .gnu.warning sections are handled specially by elf32.em. */ *(.gnu.warning) } =0x90909090 .fini : { KEEP (*(.fini)) } =0x90909090 PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = ALIGN (0x1000) - ((0x1000 - .) & (0x1000 - 1)); . = DATA_SEGMENT_ALIGN (0x1000, 0x1000); /* Exception handling */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } /* Thread Local Storage sections */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT(.init_array.*))) KEEP (*(.init_array)) } .fini_array : { KEEP (*(.fini_array)) KEEP (*(SORT(.fini_array.*))) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin*.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend*.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin*.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend*.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.got) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) KEEP (*(.gnu.linkonce.d.*personality*)) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that the .bss section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we don't pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 : { *(.comment) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1 */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2 */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2 */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /DISCARD/ : { *(.note.GNU-stack) } } /* Script for --shared -z combreloc: shared library, combine & sort relocs */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("/usr/local/google/home/dmitriyz/toolchain/i686-unknown-linux-gnu/lib"); SEARCH_DIR("/usr/local/google/home/dmitriyz/toolchain/lib"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ . = 0 + SIZEOF_HEADERS; .hash : { *(.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.dyn : { *(.rel.init) *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) *(.rel.fini) *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) *(.rel.data.rel.ro* .rel.gnu.linkonce.d.rel.ro.*) *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) *(.rel.ctors) *(.rel.dtors) *(.rel.got) *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rel.plt : { *(.rel.plt) } .rela.plt : { *(.rela.plt) } .init : { KEEP (*(.init)) } =0x90909090 .plt : { *(.plt) } .text : { *(.text .stub .text.* .gnu.linkonce.t.*) KEEP (*(.text.*personality*)) /* .gnu.warning sections are handled specially by elf32.em. */ *(.gnu.warning) } =0x90909090 .fini : { KEEP (*(.fini)) } =0x90909090 PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = ALIGN (0x1000) - ((0x1000 - .) & (0x1000 - 1)); . = DATA_SEGMENT_ALIGN (0x1000, 0x1000); /* Exception handling */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } /* Thread Local Storage sections */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT(.init_array.*))) KEEP (*(.init_array)) } .fini_array : { KEEP (*(.fini_array)) KEEP (*(SORT(.fini_array.*))) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin*.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend*.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin*.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend*.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) } . = DATA_SEGMENT_RELRO_END (12, .); .got.plt : { *(.got.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) KEEP (*(.gnu.linkonce.d.*personality*)) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that the .bss section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we don't pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 : { *(.comment) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1 */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2 */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2 */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /DISCARD/ : { *(.note.GNU-stack) } } /* Script for ld --shared: link shared library */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("/usr/local/google/home/dmitriyz/toolchain/i686-unknown-linux-gnu/lib"); SEARCH_DIR("/usr/local/google/home/dmitriyz/toolchain/lib"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ . = 0 + SIZEOF_HEADERS; .hash : { *(.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.init : { *(.rel.init) } .rela.init : { *(.rela.init) } .rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) } .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } .rel.fini : { *(.rel.fini) } .rela.fini : { *(.rela.fini) } .rel.rodata : { *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) } .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } .rel.data.rel.ro : { *(.rel.data.rel.ro* .rel.gnu.linkonce.d.rel.ro.*) } .rela.data.rel.ro : { *(.rela.data.rel.ro* .rela.gnu.linkonce.d.rel.ro.*) } .rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) } .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } .rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) } .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } .rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) } .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } .rel.ctors : { *(.rel.ctors) } .rela.ctors : { *(.rela.ctors) } .rel.dtors : { *(.rel.dtors) } .rela.dtors : { *(.rela.dtors) } .rel.got : { *(.rel.got) } .rela.got : { *(.rela.got) } .rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) } .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rel.plt : { *(.rel.plt) } .rela.plt : { *(.rela.plt) } .init : { KEEP (*(.init)) } =0x90909090 .plt : { *(.plt) } .text : { *(.text .stub .text.* .gnu.linkonce.t.*) KEEP (*(.text.*personality*)) /* .gnu.warning sections are handled specially by elf32.em. */ *(.gnu.warning) } =0x90909090 .fini : { KEEP (*(.fini)) } =0x90909090 PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = ALIGN (0x1000) - ((0x1000 - .) & (0x1000 - 1)); . = DATA_SEGMENT_ALIGN (0x1000, 0x1000); /* Exception handling */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } /* Thread Local Storage sections */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT(.init_array.*))) KEEP (*(.init_array)) } .fini_array : { KEEP (*(.fini_array)) KEEP (*(SORT(.fini_array.*))) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin*.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend*.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin*.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend*.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) } . = DATA_SEGMENT_RELRO_END (12, .); .got.plt : { *(.got.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) KEEP (*(.gnu.linkonce.d.*personality*)) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that the .bss section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we don't pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 : { *(.comment) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1 */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2 */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2 */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /DISCARD/ : { *(.note.GNU-stack) } } /* Script for -z combreloc -z now -z relro: combine and sort reloc sections */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("/usr/local/google/home/dmitriyz/toolchain/i686-unknown-linux-gnu/lib"); SEARCH_DIR("/usr/local/google/home/dmitriyz/toolchain/lib"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = 0x08048000); . = 0x08048000 + SIZEOF_HEADERS; .interp : { *(.interp) } .hash : { *(.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.dyn : { *(.rel.init) *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) *(.rel.fini) *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) *(.rel.data.rel.ro* .rel.gnu.linkonce.d.rel.ro.*) *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) *(.rel.ctors) *(.rel.dtors) *(.rel.got) *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rel.plt : { *(.rel.plt) } .rela.plt : { *(.rela.plt) } .init : { KEEP (*(.init)) } =0x90909090 .plt : { *(.plt) } .text : { *(.text .stub .text.* .gnu.linkonce.t.*) KEEP (*(.text.*personality*)) /* .gnu.warning sections are handled specially by elf32.em. */ *(.gnu.warning) } =0x90909090 .fini : { KEEP (*(.fini)) } =0x90909090 PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = ALIGN (0x1000) - ((0x1000 - .) & (0x1000 - 1)); . = DATA_SEGMENT_ALIGN (0x1000, 0x1000); /* Exception handling */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } /* Thread Local Storage sections */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT(.init_array.*))) KEEP (*(.init_array)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(.fini_array)) KEEP (*(SORT(.fini_array.*))) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin*.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend*.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin*.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend*.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.got) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) KEEP (*(.gnu.linkonce.d.*personality*)) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that the .bss section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we don't pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 : { *(.comment) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1 */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2 */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2 */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /DISCARD/ : { *(.note.GNU-stack) } } /* Script for -z combreloc: combine and sort reloc sections */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("/usr/local/google/home/dmitriyz/toolchain/i686-unknown-linux-gnu/lib"); SEARCH_DIR("/usr/local/google/home/dmitriyz/toolchain/lib"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = 0x08048000); . = 0x08048000 + SIZEOF_HEADERS; .interp : { *(.interp) } .hash : { *(.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.dyn : { *(.rel.init) *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) *(.rel.fini) *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) *(.rel.data.rel.ro* .rel.gnu.linkonce.d.rel.ro.*) *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) *(.rel.ctors) *(.rel.dtors) *(.rel.got) *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rel.plt : { *(.rel.plt) } .rela.plt : { *(.rela.plt) } .init : { KEEP (*(.init)) } =0x90909090 .plt : { *(.plt) } .text : { *(.text .stub .text.* .gnu.linkonce.t.*) KEEP (*(.text.*personality*)) /* .gnu.warning sections are handled specially by elf32.em. */ *(.gnu.warning) } =0x90909090 .fini : { KEEP (*(.fini)) } =0x90909090 PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = ALIGN (0x1000) - ((0x1000 - .) & (0x1000 - 1)); . = DATA_SEGMENT_ALIGN (0x1000, 0x1000); /* Exception handling */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } /* Thread Local Storage sections */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT(.init_array.*))) KEEP (*(.init_array)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(.fini_array)) KEEP (*(SORT(.fini_array.*))) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin*.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend*.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin*.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend*.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) } . = DATA_SEGMENT_RELRO_END (12, .); .got.plt : { *(.got.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) KEEP (*(.gnu.linkonce.d.*personality*)) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that the .bss section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we don't pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 : { *(.comment) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1 */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2 */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2 */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /DISCARD/ : { *(.note.GNU-stack) } } /* Default linker script, for normal executables */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("/usr/local/google/home/dmitriyz/toolchain/i686-unknown-linux-gnu/lib"); SEARCH_DIR("/usr/local/google/home/dmitriyz/toolchain/lib"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = 0x08048000); . = 0x08048000 + SIZEOF_HEADERS; .interp : { *(.interp) } .hash : { *(.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.init : { *(.rel.init) } .rela.init : { *(.rela.init) } .rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) } .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } .rel.fini : { *(.rel.fini) } .rela.fini : { *(.rela.fini) } .rel.rodata : { *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) } .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } .rel.data.rel.ro : { *(.rel.data.rel.ro* .rel.gnu.linkonce.d.rel.ro.*) } .rela.data.rel.ro : { *(.rela.data.rel.ro* .rela.gnu.linkonce.d.rel.ro.*) } .rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) } .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } .rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) } .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } .rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) } .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } .rel.ctors : { *(.rel.ctors) } .rela.ctors : { *(.rela.ctors) } .rel.dtors : { *(.rel.dtors) } .rela.dtors : { *(.rela.dtors) } .rel.got : { *(.rel.got) } .rela.got : { *(.rela.got) } .rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) } .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rel.plt : { *(.rel.plt) } .rela.plt : { *(.rela.plt) } .init : { KEEP (*(.init)) } =0x90909090 .plt : { *(.plt) } .text : { *(.text .stub .text.* .gnu.linkonce.t.*) KEEP (*(.text.*personality*)) /* .gnu.warning sections are handled specially by elf32.em. */ *(.gnu.warning) } =0x90909090 .fini : { KEEP (*(.fini)) } =0x90909090 PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = ALIGN (0x1000) - ((0x1000 - .) & (0x1000 - 1)); . = DATA_SEGMENT_ALIGN (0x1000, 0x1000); /* Exception handling */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } /* Thread Local Storage sections */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT(.init_array.*))) KEEP (*(.init_array)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(.fini_array)) KEEP (*(SORT(.fini_array.*))) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin*.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend*.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin*.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend*.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) } . = DATA_SEGMENT_RELRO_END (12, .); .got.plt : { *(.got.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) KEEP (*(.gnu.linkonce.d.*personality*)) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that the .bss section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we don't pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 : { *(.comment) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1 */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2 */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2 */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /DISCARD/ : { *(.note.GNU-stack) } } -Bgroup Selects group name lookup rules for DSO --disable-new-dtags Disable new dynamic tags --enable-new-dtags Enable new dynamic tags --eh-frame-hdr Create .eh_frame_hdr section -z combreloc Merge dynamic relocs into one section and sort -z defs Report unresolved symbols in object files. -z execstack Mark executable as requiring executable stack -z initfirst Mark DSO to be initialized first at runtime -z interpose Mark object to interpose all DSOs but executable -z loadfltr Mark object requiring immediate process -z muldefs Allow multiple definitions -z nocombreloc Don't merge dynamic relocs into one section -z nocopyreloc Don't create copy relocs -z nodefaultlib Mark object not to use default search paths -z nodelete Mark DSO non-deletable at runtime -z nodlopen Mark DSO not available to dlopen -z nodump Mark DSO not available to dldump -z noexecstack Mark executable as not requiring executable stack -z norelro Don't create RELRO program header -z now Mark object non-lazy runtime binding -z origin Mark object requiring immediate $ORIGIN processing at runtime -z relro Create RELRO program header -z KEYWORD Ignored for Solaris compatibility ~ x " z: i386linux a.out-i386-linux %s/lib%s%s.sa ei386linux.c ldscripts/i386linux.xu ldscripts/i386linux.xr ldscripts/i386linux.xbn ldscripts/i386linux.xn ldscripts/i386linux.x ! ! __.SYMDEF __.SYMDEF/ / /SYM64/ ARFILENAMES/ // %-ld // ARFILENAMES/ __.SYMDEF %-10ld bfd %-7lo %-12ld %-8lo ` bfd_dont_truncate_arname /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/archive.c Reading archive file mod timestamp Writing updated armap timestamp Warning: writing archive was slow: rewriting timestamp unknown binary UNKNOWN! j j Ya a @ No error System call error Invalid bfd target File in wrong format Invalid operation Memory exhausted No symbols No more archived files Malformed archive File format not recognized File format is ambiguous Section has no contents Bad value File truncated File too big # %s: %s %s: BFD: %s[%s] BFD %s assertion fail %s:%d Please report this bug. coff-go32 pe-i386 pei-i386 Archive object file in wrong format Archive has no index; run ranlib to add one Nonrepresentable section on output Symbol needs debug section which does not exist BFD %s internal error, aborting at %s line %d in %s BFD %s internal error, aborting at %s line %d /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/bfd.c Xk ak sk k l k k k m k k k l &l 4m Xm >l Hl Wl dl bfd_stat /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/bfdio.c ~ } } :} y | ~| bfd_cache_lookup_worker /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/cache.c r+ w+ reopening %B: %s /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/coffgen.c (sec %2d)(fl 0x%02x)(ty %3x)(scl %3d) (nx %d) 0x AUX scnlen 0x%lx nreloc %d nlnno %d checksum 0x%lx assoc %d comdat %d AUX tagndx %ld ttlsiz 0x%lx lnnos %ld next %ld AUX lnno %d size 0x%x tagndx %ld coff_fix_symbol_name strange .debug .file %B: bad string table size %lu coff %s %s [%3ld] File endndx %ld %s : %4d : %-5s %s %s %s invalid object bfd_put_bits bfd_get_bits _bfd_generic_get_section_contents_in_window /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/libbfd.c %B: compiled for a big endian system and target is little endian %B: compiled for a little endian system and target is big endian Deprecated %s called at %s line %d in %s Deprecated %s called Y bfd_fdopenr 0 w,a Q m jp5 c d 2 y +L | ~ - d jHq A } mQ V l kdz b e O\ l cc= n;^ iL A` rqg jm Zjz ' }D h i]Wb ge q6l knv + Zz J go C ` ~ 8R O g gW ?K6 H + L J 6`z A ` U g n1y iF a f o%6 hR w G "/& U ; ( Z + j \ 1 , [ d & c ju m ?6 g r W J z + {8 |! B hn [& w owG Z pj ; f\ e i b kaE l x T N 9a&g ` MGiI wn>Jj Z f @ ; 7S G 0 0 S $ 6 )W T g #.zf Ja h] +o*7 Z -.gnu_debuglink /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/opncls.c @@uninitialized@@ BFD_RELOC_64 BFD_RELOC_32 BFD_RELOC_26 BFD_RELOC_24 BFD_RELOC_16 BFD_RELOC_14 BFD_RELOC_8 BFD_RELOC_64_PCREL BFD_RELOC_32_PCREL BFD_RELOC_24_PCREL BFD_RELOC_16_PCREL BFD_RELOC_12_PCREL BFD_RELOC_8_PCREL BFD_RELOC_32_SECREL BFD_RELOC_32_GOT_PCREL BFD_RELOC_16_GOT_PCREL BFD_RELOC_8_GOT_PCREL BFD_RELOC_32_GOTOFF BFD_RELOC_16_GOTOFF BFD_RELOC_LO16_GOTOFF BFD_RELOC_HI16_GOTOFF BFD_RELOC_HI16_S_GOTOFF BFD_RELOC_8_GOTOFF BFD_RELOC_64_PLT_PCREL BFD_RELOC_32_PLT_PCREL BFD_RELOC_24_PLT_PCREL BFD_RELOC_16_PLT_PCREL BFD_RELOC_8_PLT_PCREL BFD_RELOC_64_PLTOFF BFD_RELOC_32_PLTOFF BFD_RELOC_16_PLTOFF BFD_RELOC_LO16_PLTOFF BFD_RELOC_HI16_PLTOFF BFD_RELOC_HI16_S_PLTOFF BFD_RELOC_8_PLTOFF BFD_RELOC_68K_GLOB_DAT BFD_RELOC_68K_JMP_SLOT BFD_RELOC_68K_RELATIVE BFD_RELOC_32_BASEREL BFD_RELOC_16_BASEREL BFD_RELOC_LO16_BASEREL BFD_RELOC_HI16_BASEREL BFD_RELOC_HI16_S_BASEREL BFD_RELOC_8_BASEREL BFD_RELOC_RVA BFD_RELOC_8_FFnn BFD_RELOC_32_PCREL_S2 BFD_RELOC_16_PCREL_S2 BFD_RELOC_23_PCREL_S2 BFD_RELOC_HI22 BFD_RELOC_LO10 BFD_RELOC_GPREL16 BFD_RELOC_GPREL32 BFD_RELOC_I960_CALLJ BFD_RELOC_NONE BFD_RELOC_SPARC_WDISP22 BFD_RELOC_SPARC22 BFD_RELOC_SPARC13 BFD_RELOC_SPARC_GOT10 BFD_RELOC_SPARC_GOT13 BFD_RELOC_SPARC_GOT22 BFD_RELOC_SPARC_PC10 BFD_RELOC_SPARC_PC22 BFD_RELOC_SPARC_WPLT30 BFD_RELOC_SPARC_COPY BFD_RELOC_SPARC_GLOB_DAT BFD_RELOC_SPARC_JMP_SLOT BFD_RELOC_SPARC_RELATIVE BFD_RELOC_SPARC_UA16 BFD_RELOC_SPARC_UA32 BFD_RELOC_SPARC_UA64 BFD_RELOC_SPARC_BASE13 BFD_RELOC_SPARC_BASE22 BFD_RELOC_SPARC_10 BFD_RELOC_SPARC_11 BFD_RELOC_SPARC_OLO10 BFD_RELOC_SPARC_HH22 BFD_RELOC_SPARC_HM10 BFD_RELOC_SPARC_LM22 BFD_RELOC_SPARC_PC_HH22 BFD_RELOC_SPARC_PC_HM10 BFD_RELOC_SPARC_PC_LM22 BFD_RELOC_SPARC_WDISP16 BFD_RELOC_SPARC_WDISP19 BFD_RELOC_SPARC_7 BFD_RELOC_SPARC_6 BFD_RELOC_SPARC_5 BFD_RELOC_SPARC_PLT32 BFD_RELOC_SPARC_PLT64 BFD_RELOC_SPARC_HIX22 BFD_RELOC_SPARC_LOX10 BFD_RELOC_SPARC_H44 BFD_RELOC_SPARC_M44 BFD_RELOC_SPARC_L44 BFD_RELOC_SPARC_REGISTER BFD_RELOC_SPARC_REV32 BFD_RELOC_SPARC_TLS_GD_HI22 BFD_RELOC_SPARC_TLS_GD_LO10 BFD_RELOC_SPARC_TLS_GD_ADD BFD_RELOC_SPARC_TLS_GD_CALL BFD_RELOC_SPARC_TLS_LDM_HI22 BFD_RELOC_SPARC_TLS_LDM_LO10 BFD_RELOC_SPARC_TLS_LDM_ADD BFD_RELOC_SPARC_TLS_LDM_CALL BFD_RELOC_SPARC_TLS_LDO_HIX22 BFD_RELOC_SPARC_TLS_LDO_LOX10 BFD_RELOC_SPARC_TLS_LDO_ADD BFD_RELOC_SPARC_TLS_IE_HI22 BFD_RELOC_SPARC_TLS_IE_LO10 BFD_RELOC_SPARC_TLS_IE_LD BFD_RELOC_SPARC_TLS_IE_LDX BFD_RELOC_SPARC_TLS_IE_ADD BFD_RELOC_SPARC_TLS_LE_HIX22 BFD_RELOC_SPARC_TLS_LE_LOX10 BFD_RELOC_SPARC_TLS_DTPMOD32 BFD_RELOC_SPARC_TLS_DTPMOD64 BFD_RELOC_SPARC_TLS_DTPOFF32 BFD_RELOC_SPARC_TLS_DTPOFF64 BFD_RELOC_SPARC_TLS_TPOFF32 BFD_RELOC_SPARC_TLS_TPOFF64 BFD_RELOC_ALPHA_GPDISP_HI16 BFD_RELOC_ALPHA_GPDISP_LO16 BFD_RELOC_ALPHA_GPDISP BFD_RELOC_ALPHA_LITERAL BFD_RELOC_ALPHA_ELF_LITERAL BFD_RELOC_ALPHA_LITUSE BFD_RELOC_ALPHA_HINT BFD_RELOC_ALPHA_LINKAGE BFD_RELOC_ALPHA_CODEADDR BFD_RELOC_ALPHA_GPREL_HI16 BFD_RELOC_ALPHA_GPREL_LO16 BFD_RELOC_ALPHA_BRSGP BFD_RELOC_ALPHA_TLSGD BFD_RELOC_ALPHA_TLSLDM BFD_RELOC_ALPHA_DTPMOD64 BFD_RELOC_ALPHA_GOTDTPREL16 BFD_RELOC_ALPHA_DTPREL64 BFD_RELOC_ALPHA_DTPREL_HI16 BFD_RELOC_ALPHA_DTPREL_LO16 BFD_RELOC_ALPHA_DTPREL16 BFD_RELOC_ALPHA_GOTTPREL16 BFD_RELOC_ALPHA_TPREL64 BFD_RELOC_ALPHA_TPREL_HI16 BFD_RELOC_ALPHA_TPREL_LO16 BFD_RELOC_ALPHA_TPREL16 BFD_RELOC_MIPS_JMP BFD_RELOC_MIPS16_JMP BFD_RELOC_MIPS16_GPREL BFD_RELOC_HI16 BFD_RELOC_HI16_S BFD_RELOC_LO16 BFD_RELOC_HI16_PCREL BFD_RELOC_HI16_S_PCREL BFD_RELOC_LO16_PCREL BFD_RELOC_MIPS16_HI16 BFD_RELOC_MIPS16_HI16_S BFD_RELOC_MIPS16_LO16 BFD_RELOC_MIPS_LITERAL BFD_RELOC_MIPS_GOT16 BFD_RELOC_MIPS_CALL16 BFD_RELOC_MIPS_GOT_HI16 BFD_RELOC_MIPS_GOT_LO16 BFD_RELOC_MIPS_CALL_HI16 BFD_RELOC_MIPS_CALL_LO16 BFD_RELOC_MIPS_SUB BFD_RELOC_MIPS_GOT_PAGE BFD_RELOC_MIPS_GOT_OFST BFD_RELOC_MIPS_GOT_DISP BFD_RELOC_MIPS_SHIFT5 BFD_RELOC_MIPS_SHIFT6 BFD_RELOC_MIPS_INSERT_A BFD_RELOC_MIPS_INSERT_B BFD_RELOC_MIPS_DELETE BFD_RELOC_MIPS_HIGHEST BFD_RELOC_MIPS_HIGHER BFD_RELOC_MIPS_SCN_DISP BFD_RELOC_MIPS_REL16 BFD_RELOC_MIPS_RELGOT BFD_RELOC_MIPS_JALR BFD_RELOC_MIPS_TLS_DTPMOD32 BFD_RELOC_MIPS_TLS_DTPREL32 BFD_RELOC_MIPS_TLS_DTPMOD64 BFD_RELOC_MIPS_TLS_DTPREL64 BFD_RELOC_MIPS_TLS_GD BFD_RELOC_MIPS_TLS_LDM BFD_RELOC_MIPS_TLS_GOTTPREL BFD_RELOC_MIPS_TLS_TPREL32 BFD_RELOC_MIPS_TLS_TPREL64 BFD_RELOC_MIPS_TLS_TPREL_HI16 BFD_RELOC_MIPS_TLS_TPREL_LO16 BFD_RELOC_MIPS_COPY BFD_RELOC_MIPS_JUMP_SLOT BFD_RELOC_FRV_LABEL16 BFD_RELOC_FRV_LABEL24 BFD_RELOC_FRV_LO16 BFD_RELOC_FRV_HI16 BFD_RELOC_FRV_GPREL12 BFD_RELOC_FRV_GPRELU12 BFD_RELOC_FRV_GPREL32 BFD_RELOC_FRV_GPRELHI BFD_RELOC_FRV_GPRELLO BFD_RELOC_FRV_GOT12 BFD_RELOC_FRV_GOTHI BFD_RELOC_FRV_GOTLO BFD_RELOC_FRV_FUNCDESC BFD_RELOC_FRV_FUNCDESC_GOT12 BFD_RELOC_FRV_FUNCDESC_GOTHI BFD_RELOC_FRV_FUNCDESC_GOTLO BFD_RELOC_FRV_FUNCDESC_VALUE BFD_RELOC_FRV_GOTOFF12 BFD_RELOC_FRV_GOTOFFHI BFD_RELOC_FRV_GOTOFFLO BFD_RELOC_FRV_GETTLSOFF BFD_RELOC_FRV_TLSDESC_VALUE BFD_RELOC_FRV_GOTTLSDESC12 BFD_RELOC_FRV_GOTTLSDESCHI BFD_RELOC_FRV_GOTTLSDESCLO BFD_RELOC_FRV_TLSMOFF12 BFD_RELOC_FRV_TLSMOFFHI BFD_RELOC_FRV_TLSMOFFLO BFD_RELOC_FRV_GOTTLSOFF12 BFD_RELOC_FRV_GOTTLSOFFHI BFD_RELOC_FRV_GOTTLSOFFLO BFD_RELOC_FRV_TLSOFF BFD_RELOC_FRV_TLSDESC_RELAX BFD_RELOC_FRV_GETTLSOFF_RELAX BFD_RELOC_FRV_TLSOFF_RELAX BFD_RELOC_FRV_TLSMOFF BFD_RELOC_MN10300_GOTOFF24 BFD_RELOC_MN10300_GOT32 BFD_RELOC_MN10300_GOT24 BFD_RELOC_MN10300_GOT16 BFD_RELOC_MN10300_COPY BFD_RELOC_MN10300_GLOB_DAT BFD_RELOC_MN10300_JMP_SLOT BFD_RELOC_MN10300_RELATIVE BFD_RELOC_386_GOT32 BFD_RELOC_386_PLT32 BFD_RELOC_386_COPY BFD_RELOC_386_GLOB_DAT BFD_RELOC_386_JUMP_SLOT BFD_RELOC_386_RELATIVE BFD_RELOC_386_GOTOFF BFD_RELOC_386_GOTPC BFD_RELOC_386_TLS_TPOFF BFD_RELOC_386_TLS_IE BFD_RELOC_386_TLS_GOTIE BFD_RELOC_386_TLS_LE BFD_RELOC_386_TLS_GD BFD_RELOC_386_TLS_LDM BFD_RELOC_386_TLS_LDO_32 BFD_RELOC_386_TLS_IE_32 BFD_RELOC_386_TLS_LE_32 BFD_RELOC_386_TLS_DTPMOD32 BFD_RELOC_386_TLS_DTPOFF32 BFD_RELOC_386_TLS_TPOFF32 BFD_RELOC_386_TLS_GOTDESC BFD_RELOC_386_TLS_DESC_CALL BFD_RELOC_386_TLS_DESC BFD_RELOC_X86_64_GOT32 BFD_RELOC_X86_64_PLT32 BFD_RELOC_X86_64_COPY BFD_RELOC_X86_64_GLOB_DAT BFD_RELOC_X86_64_JUMP_SLOT BFD_RELOC_X86_64_RELATIVE BFD_RELOC_X86_64_GOTPCREL BFD_RELOC_X86_64_32S BFD_RELOC_X86_64_DTPMOD64 BFD_RELOC_X86_64_DTPOFF64 BFD_RELOC_X86_64_TPOFF64 BFD_RELOC_X86_64_TLSGD BFD_RELOC_X86_64_TLSLD BFD_RELOC_X86_64_DTPOFF32 BFD_RELOC_X86_64_GOTTPOFF BFD_RELOC_X86_64_TPOFF32 BFD_RELOC_X86_64_GOTOFF64 BFD_RELOC_X86_64_GOTPC32 BFD_RELOC_X86_64_GOT64 BFD_RELOC_X86_64_GOTPCREL64 BFD_RELOC_X86_64_GOTPC64 BFD_RELOC_X86_64_GOTPLT64 BFD_RELOC_X86_64_PLTOFF64 BFD_RELOC_X86_64_TLSDESC_CALL BFD_RELOC_X86_64_TLSDESC BFD_RELOC_NS32K_IMM_8 BFD_RELOC_NS32K_IMM_16 BFD_RELOC_NS32K_IMM_32 BFD_RELOC_NS32K_IMM_8_PCREL BFD_RELOC_NS32K_IMM_16_PCREL BFD_RELOC_NS32K_IMM_32_PCREL BFD_RELOC_NS32K_DISP_8 BFD_RELOC_NS32K_DISP_16 BFD_RELOC_NS32K_DISP_32 BFD_RELOC_NS32K_DISP_8_PCREL BFD_RELOC_NS32K_DISP_16_PCREL BFD_RELOC_NS32K_DISP_32_PCREL BFD_RELOC_PDP11_DISP_8_PCREL BFD_RELOC_PDP11_DISP_6_PCREL BFD_RELOC_PJ_CODE_HI16 BFD_RELOC_PJ_CODE_LO16 BFD_RELOC_PJ_CODE_DIR16 BFD_RELOC_PJ_CODE_DIR32 BFD_RELOC_PJ_CODE_REL16 BFD_RELOC_PJ_CODE_REL32 BFD_RELOC_PPC_B26 BFD_RELOC_PPC_BA26 BFD_RELOC_PPC_TOC16 BFD_RELOC_PPC_B16 BFD_RELOC_PPC_B16_BRTAKEN BFD_RELOC_PPC_B16_BRNTAKEN BFD_RELOC_PPC_BA16 BFD_RELOC_PPC_BA16_BRTAKEN BFD_RELOC_PPC_BA16_BRNTAKEN BFD_RELOC_PPC_COPY BFD_RELOC_PPC_GLOB_DAT BFD_RELOC_PPC_JMP_SLOT BFD_RELOC_PPC_RELATIVE BFD_RELOC_PPC_LOCAL24PC BFD_RELOC_PPC_EMB_NADDR32 BFD_RELOC_PPC_EMB_NADDR16 BFD_RELOC_PPC_EMB_NADDR16_LO BFD_RELOC_PPC_EMB_NADDR16_HI BFD_RELOC_PPC_EMB_NADDR16_HA BFD_RELOC_PPC_EMB_SDAI16 BFD_RELOC_PPC_EMB_SDA2I16 BFD_RELOC_PPC_EMB_SDA2REL BFD_RELOC_PPC_EMB_SDA21 BFD_RELOC_PPC_EMB_MRKREF BFD_RELOC_PPC_EMB_RELSEC16 BFD_RELOC_PPC_EMB_RELST_LO BFD_RELOC_PPC_EMB_RELST_HI BFD_RELOC_PPC_EMB_RELST_HA BFD_RELOC_PPC_EMB_BIT_FLD BFD_RELOC_PPC_EMB_RELSDA BFD_RELOC_PPC64_HIGHER BFD_RELOC_PPC64_HIGHER_S BFD_RELOC_PPC64_HIGHEST BFD_RELOC_PPC64_HIGHEST_S BFD_RELOC_PPC64_TOC16_LO BFD_RELOC_PPC64_TOC16_HI BFD_RELOC_PPC64_TOC16_HA BFD_RELOC_PPC64_TOC BFD_RELOC_PPC64_PLTGOT16 BFD_RELOC_PPC64_PLTGOT16_LO BFD_RELOC_PPC64_PLTGOT16_HI BFD_RELOC_PPC64_PLTGOT16_HA BFD_RELOC_PPC64_ADDR16_DS BFD_RELOC_PPC64_ADDR16_LO_DS BFD_RELOC_PPC64_GOT16_DS BFD_RELOC_PPC64_GOT16_LO_DS BFD_RELOC_PPC64_PLT16_LO_DS BFD_RELOC_PPC64_SECTOFF_DS BFD_RELOC_PPC64_SECTOFF_LO_DS BFD_RELOC_PPC64_TOC16_DS BFD_RELOC_PPC64_TOC16_LO_DS BFD_RELOC_PPC64_PLTGOT16_DS BFD_RELOC_PPC_TLS BFD_RELOC_PPC_DTPMOD BFD_RELOC_PPC_TPREL16 BFD_RELOC_PPC_TPREL16_LO BFD_RELOC_PPC_TPREL16_HI BFD_RELOC_PPC_TPREL16_HA BFD_RELOC_PPC_TPREL BFD_RELOC_PPC_DTPREL16 BFD_RELOC_PPC_DTPREL16_LO BFD_RELOC_PPC_DTPREL16_HI BFD_RELOC_PPC_DTPREL16_HA BFD_RELOC_PPC_DTPREL BFD_RELOC_PPC_GOT_TLSGD16 BFD_RELOC_PPC_GOT_TLSGD16_LO BFD_RELOC_PPC_GOT_TLSGD16_HI BFD_RELOC_PPC_GOT_TLSGD16_HA BFD_RELOC_PPC_GOT_TLSLD16 BFD_RELOC_PPC_GOT_TLSLD16_LO BFD_RELOC_PPC_GOT_TLSLD16_HI BFD_RELOC_PPC_GOT_TLSLD16_HA BFD_RELOC_PPC_GOT_TPREL16 BFD_RELOC_PPC_GOT_TPREL16_LO BFD_RELOC_PPC_GOT_TPREL16_HI BFD_RELOC_PPC_GOT_TPREL16_HA BFD_RELOC_PPC_GOT_DTPREL16 BFD_RELOC_PPC_GOT_DTPREL16_LO BFD_RELOC_PPC_GOT_DTPREL16_HI BFD_RELOC_PPC_GOT_DTPREL16_HA BFD_RELOC_PPC64_TPREL16_DS BFD_RELOC_PPC64_TPREL16_LO_DS BFD_RELOC_PPC64_DTPREL16_DS BFD_RELOC_I370_D12 BFD_RELOC_CTOR BFD_RELOC_ARM_PCREL_BRANCH BFD_RELOC_ARM_PCREL_BLX BFD_RELOC_THUMB_PCREL_BLX BFD_RELOC_ARM_PCREL_CALL BFD_RELOC_ARM_PCREL_JUMP BFD_RELOC_THUMB_PCREL_BRANCH7 BFD_RELOC_THUMB_PCREL_BRANCH9 BFD_RELOC_ARM_OFFSET_IMM BFD_RELOC_ARM_THUMB_OFFSET BFD_RELOC_ARM_TARGET1 BFD_RELOC_ARM_ROSEGREL32 BFD_RELOC_ARM_SBREL32 BFD_RELOC_ARM_TARGET2 BFD_RELOC_ARM_PREL31 BFD_RELOC_ARM_JUMP_SLOT BFD_RELOC_ARM_GLOB_DAT BFD_RELOC_ARM_GOT32 BFD_RELOC_ARM_PLT32 BFD_RELOC_ARM_RELATIVE BFD_RELOC_ARM_GOTOFF BFD_RELOC_ARM_GOTPC BFD_RELOC_ARM_TLS_GD32 BFD_RELOC_ARM_TLS_LDO32 BFD_RELOC_ARM_TLS_LDM32 BFD_RELOC_ARM_TLS_DTPOFF32 BFD_RELOC_ARM_TLS_DTPMOD32 BFD_RELOC_ARM_TLS_TPOFF32 BFD_RELOC_ARM_TLS_IE32 BFD_RELOC_ARM_TLS_LE32 BFD_RELOC_ARM_IMMEDIATE BFD_RELOC_ARM_ADRL_IMMEDIATE BFD_RELOC_ARM_T32_IMMEDIATE BFD_RELOC_ARM_T32_IMM12 BFD_RELOC_ARM_T32_ADD_PC12 BFD_RELOC_ARM_SHIFT_IMM BFD_RELOC_ARM_SMC BFD_RELOC_ARM_SWI BFD_RELOC_ARM_MULTI BFD_RELOC_ARM_CP_OFF_IMM BFD_RELOC_ARM_CP_OFF_IMM_S2 BFD_RELOC_ARM_T32_CP_OFF_IMM BFD_RELOC_ARM_ADR_IMM BFD_RELOC_ARM_LDR_IMM BFD_RELOC_ARM_LITERAL BFD_RELOC_ARM_IN_POOL BFD_RELOC_ARM_OFFSET_IMM8 BFD_RELOC_ARM_T32_OFFSET_U8 BFD_RELOC_ARM_T32_OFFSET_IMM BFD_RELOC_ARM_HWLITERAL BFD_RELOC_ARM_THUMB_ADD BFD_RELOC_ARM_THUMB_IMM BFD_RELOC_ARM_THUMB_SHIFT BFD_RELOC_SH_PCDISP8BY2 BFD_RELOC_SH_PCDISP12BY2 BFD_RELOC_SH_IMM3 BFD_RELOC_SH_IMM3U BFD_RELOC_SH_DISP12 BFD_RELOC_SH_DISP12BY2 BFD_RELOC_SH_DISP12BY4 BFD_RELOC_SH_DISP12BY8 BFD_RELOC_SH_DISP20 BFD_RELOC_SH_DISP20BY8 BFD_RELOC_SH_IMM4 BFD_RELOC_SH_IMM4BY2 BFD_RELOC_SH_IMM4BY4 BFD_RELOC_SH_IMM8 BFD_RELOC_SH_IMM8BY2 BFD_RELOC_SH_IMM8BY4 BFD_RELOC_SH_PCRELIMM8BY2 BFD_RELOC_SH_PCRELIMM8BY4 BFD_RELOC_SH_SWITCH16 BFD_RELOC_SH_SWITCH32 BFD_RELOC_SH_USES BFD_RELOC_SH_COUNT BFD_RELOC_SH_ALIGN BFD_RELOC_SH_CODE BFD_RELOC_SH_DATA BFD_RELOC_SH_LABEL BFD_RELOC_SH_LOOP_START BFD_RELOC_SH_LOOP_END BFD_RELOC_SH_COPY BFD_RELOC_SH_GLOB_DAT BFD_RELOC_SH_JMP_SLOT BFD_RELOC_SH_RELATIVE BFD_RELOC_SH_GOTPC BFD_RELOC_SH_GOT_LOW16 BFD_RELOC_SH_GOT_MEDLOW16 BFD_RELOC_SH_GOT_MEDHI16 BFD_RELOC_SH_GOT_HI16 BFD_RELOC_SH_GOTPLT_LOW16 BFD_RELOC_SH_GOTPLT_MEDLOW16 BFD_RELOC_SH_GOTPLT_MEDHI16 BFD_RELOC_SH_GOTPLT_HI16 BFD_RELOC_SH_PLT_LOW16 BFD_RELOC_SH_PLT_MEDLOW16 BFD_RELOC_SH_PLT_MEDHI16 BFD_RELOC_SH_PLT_HI16 BFD_RELOC_SH_GOTOFF_LOW16 BFD_RELOC_SH_GOTOFF_MEDLOW16 BFD_RELOC_SH_GOTOFF_MEDHI16 BFD_RELOC_SH_GOTOFF_HI16 BFD_RELOC_SH_GOTPC_LOW16 BFD_RELOC_SH_GOTPC_MEDLOW16 BFD_RELOC_SH_GOTPC_MEDHI16 BFD_RELOC_SH_GOTPC_HI16 BFD_RELOC_SH_COPY64 BFD_RELOC_SH_GLOB_DAT64 BFD_RELOC_SH_JMP_SLOT64 BFD_RELOC_SH_RELATIVE64 BFD_RELOC_SH_GOT10BY4 BFD_RELOC_SH_GOT10BY8 BFD_RELOC_SH_GOTPLT10BY4 BFD_RELOC_SH_GOTPLT10BY8 BFD_RELOC_SH_GOTPLT32 BFD_RELOC_SH_SHMEDIA_CODE BFD_RELOC_SH_IMMU5 BFD_RELOC_SH_IMMS6 BFD_RELOC_SH_IMMS6BY32 BFD_RELOC_SH_IMMU6 BFD_RELOC_SH_IMMS10 BFD_RELOC_SH_IMMS10BY2 BFD_RELOC_SH_IMMS10BY4 BFD_RELOC_SH_IMMS10BY8 BFD_RELOC_SH_IMMS16 BFD_RELOC_SH_IMMU16 BFD_RELOC_SH_IMM_LOW16 BFD_RELOC_SH_IMM_LOW16_PCREL BFD_RELOC_SH_IMM_MEDLOW16 BFD_RELOC_SH_IMM_MEDHI16 BFD_RELOC_SH_IMM_HI16 BFD_RELOC_SH_IMM_HI16_PCREL BFD_RELOC_SH_PT_16 BFD_RELOC_SH_TLS_GD_32 BFD_RELOC_SH_TLS_LD_32 BFD_RELOC_SH_TLS_LDO_32 BFD_RELOC_SH_TLS_IE_32 BFD_RELOC_SH_TLS_LE_32 BFD_RELOC_SH_TLS_DTPMOD32 BFD_RELOC_SH_TLS_DTPOFF32 BFD_RELOC_SH_TLS_TPOFF32 BFD_RELOC_ARC_B22_PCREL BFD_RELOC_ARC_B26 BFD_RELOC_BFIN_16_IMM BFD_RELOC_BFIN_16_HIGH BFD_RELOC_BFIN_4_PCREL BFD_RELOC_BFIN_5_PCREL BFD_RELOC_BFIN_16_LOW BFD_RELOC_BFIN_10_PCREL BFD_RELOC_BFIN_11_PCREL BFD_RELOC_BFIN_12_PCREL_JUMP BFD_RELOC_BFIN_GOT17M4 BFD_RELOC_BFIN_GOTHI BFD_RELOC_BFIN_GOTLO BFD_RELOC_BFIN_FUNCDESC BFD_RELOC_BFIN_FUNCDESC_GOTHI BFD_RELOC_BFIN_FUNCDESC_GOTLO BFD_RELOC_BFIN_FUNCDESC_VALUE BFD_RELOC_BFIN_GOTOFF17M4 BFD_RELOC_BFIN_GOTOFFHI BFD_RELOC_BFIN_GOTOFFLO BFD_RELOC_BFIN_GOT BFD_RELOC_BFIN_PLTPC BFD_ARELOC_BFIN_PUSH BFD_ARELOC_BFIN_CONST BFD_ARELOC_BFIN_ADD BFD_ARELOC_BFIN_SUB BFD_ARELOC_BFIN_MULT BFD_ARELOC_BFIN_DIV BFD_ARELOC_BFIN_MOD BFD_ARELOC_BFIN_LSHIFT BFD_ARELOC_BFIN_RSHIFT BFD_ARELOC_BFIN_AND BFD_ARELOC_BFIN_OR BFD_ARELOC_BFIN_XOR BFD_ARELOC_BFIN_LAND BFD_ARELOC_BFIN_LOR BFD_ARELOC_BFIN_LEN BFD_ARELOC_BFIN_NEG BFD_ARELOC_BFIN_COMP BFD_ARELOC_BFIN_PAGE BFD_ARELOC_BFIN_HWPAGE BFD_ARELOC_BFIN_ADDR BFD_RELOC_D10V_10_PCREL_R BFD_RELOC_D10V_10_PCREL_L BFD_RELOC_D10V_18 BFD_RELOC_D10V_18_PCREL BFD_RELOC_D30V_6 BFD_RELOC_D30V_9_PCREL BFD_RELOC_D30V_9_PCREL_R BFD_RELOC_D30V_15 BFD_RELOC_D30V_15_PCREL BFD_RELOC_D30V_15_PCREL_R BFD_RELOC_D30V_21 BFD_RELOC_D30V_21_PCREL BFD_RELOC_D30V_21_PCREL_R BFD_RELOC_D30V_32 BFD_RELOC_D30V_32_PCREL BFD_RELOC_DLX_HI16_S BFD_RELOC_DLX_LO16 BFD_RELOC_DLX_JMP26 BFD_RELOC_M32C_HI8 BFD_RELOC_M32C_RL_JUMP BFD_RELOC_M32C_RL_1ADDR BFD_RELOC_M32C_RL_2ADDR BFD_RELOC_M32R_24 BFD_RELOC_M32R_10_PCREL BFD_RELOC_M32R_18_PCREL BFD_RELOC_M32R_26_PCREL BFD_RELOC_M32R_HI16_ULO BFD_RELOC_M32R_HI16_SLO BFD_RELOC_M32R_LO16 BFD_RELOC_M32R_SDA16 BFD_RELOC_M32R_GOT24 BFD_RELOC_M32R_26_PLTREL BFD_RELOC_M32R_COPY BFD_RELOC_M32R_GLOB_DAT BFD_RELOC_M32R_JMP_SLOT BFD_RELOC_M32R_RELATIVE BFD_RELOC_M32R_GOTOFF BFD_RELOC_M32R_GOTOFF_HI_ULO BFD_RELOC_M32R_GOTOFF_HI_SLO BFD_RELOC_M32R_GOTOFF_LO BFD_RELOC_M32R_GOTPC24 BFD_RELOC_M32R_GOT16_HI_ULO BFD_RELOC_M32R_GOT16_HI_SLO BFD_RELOC_M32R_GOT16_LO BFD_RELOC_M32R_GOTPC_HI_ULO BFD_RELOC_M32R_GOTPC_HI_SLO BFD_RELOC_M32R_GOTPC_LO BFD_RELOC_V850_9_PCREL BFD_RELOC_V850_22_PCREL BFD_RELOC_V850_TDA_6_8_OFFSET BFD_RELOC_V850_TDA_7_8_OFFSET BFD_RELOC_V850_TDA_7_7_OFFSET BFD_RELOC_V850_TDA_4_5_OFFSET BFD_RELOC_V850_TDA_4_4_OFFSET BFD_RELOC_V850_LONGCALL BFD_RELOC_V850_LONGJUMP BFD_RELOC_V850_ALIGN BFD_RELOC_MN10300_32_PCREL BFD_RELOC_MN10300_16_PCREL BFD_RELOC_TIC30_LDP BFD_RELOC_TIC54X_PARTLS7 BFD_RELOC_TIC54X_PARTMS9 BFD_RELOC_TIC54X_23 BFD_RELOC_TIC54X_16_OF_23 BFD_RELOC_TIC54X_MS7_OF_23 BFD_RELOC_FR30_48 BFD_RELOC_FR30_20 BFD_RELOC_FR30_6_IN_4 BFD_RELOC_FR30_8_IN_8 BFD_RELOC_FR30_9_IN_8 BFD_RELOC_FR30_10_IN_8 BFD_RELOC_FR30_9_PCREL BFD_RELOC_FR30_12_PCREL BFD_RELOC_MCORE_PCREL_IMM8BY4 BFD_RELOC_MCORE_PCREL_IMM4BY2 BFD_RELOC_MCORE_PCREL_32 BFD_RELOC_MCORE_RVA BFD_RELOC_MMIX_GETA BFD_RELOC_MMIX_GETA_1 BFD_RELOC_MMIX_GETA_2 BFD_RELOC_MMIX_GETA_3 BFD_RELOC_MMIX_CBRANCH BFD_RELOC_MMIX_CBRANCH_J BFD_RELOC_MMIX_CBRANCH_1 BFD_RELOC_MMIX_CBRANCH_2 BFD_RELOC_MMIX_CBRANCH_3 BFD_RELOC_MMIX_PUSHJ BFD_RELOC_MMIX_PUSHJ_1 BFD_RELOC_MMIX_PUSHJ_2 BFD_RELOC_MMIX_PUSHJ_3 BFD_RELOC_MMIX_JMP BFD_RELOC_MMIX_JMP_1 BFD_RELOC_MMIX_JMP_2 BFD_RELOC_MMIX_JMP_3 BFD_RELOC_MMIX_ADDR19 BFD_RELOC_MMIX_ADDR27 BFD_RELOC_MMIX_REG_OR_BYTE BFD_RELOC_MMIX_REG BFD_RELOC_MMIX_LOCAL BFD_RELOC_AVR_7_PCREL BFD_RELOC_AVR_13_PCREL BFD_RELOC_AVR_16_PM BFD_RELOC_AVR_LO8_LDI BFD_RELOC_AVR_HI8_LDI BFD_RELOC_AVR_HH8_LDI BFD_RELOC_AVR_MS8_LDI BFD_RELOC_AVR_LO8_LDI_NEG BFD_RELOC_AVR_HI8_LDI_NEG BFD_RELOC_AVR_HH8_LDI_NEG BFD_RELOC_AVR_MS8_LDI_NEG BFD_RELOC_AVR_LO8_LDI_PM BFD_RELOC_AVR_HI8_LDI_PM BFD_RELOC_AVR_HH8_LDI_PM BFD_RELOC_AVR_LO8_LDI_PM_NEG BFD_RELOC_AVR_HI8_LDI_PM_NEG BFD_RELOC_AVR_HH8_LDI_PM_NEG BFD_RELOC_AVR_CALL BFD_RELOC_AVR_LDI BFD_RELOC_AVR_6 BFD_RELOC_AVR_6_ADIW BFD_RELOC_390_12 BFD_RELOC_390_GOT12 BFD_RELOC_390_PLT32 BFD_RELOC_390_COPY BFD_RELOC_390_GLOB_DAT BFD_RELOC_390_JMP_SLOT BFD_RELOC_390_RELATIVE BFD_RELOC_390_GOTPC BFD_RELOC_390_GOT16 BFD_RELOC_390_PC16DBL BFD_RELOC_390_PLT16DBL BFD_RELOC_390_PC32DBL BFD_RELOC_390_PLT32DBL BFD_RELOC_390_GOTPCDBL BFD_RELOC_390_GOT64 BFD_RELOC_390_PLT64 BFD_RELOC_390_GOTENT BFD_RELOC_390_GOTOFF64 BFD_RELOC_390_GOTPLT12 BFD_RELOC_390_GOTPLT16 BFD_RELOC_390_GOTPLT32 BFD_RELOC_390_GOTPLT64 BFD_RELOC_390_GOTPLTENT BFD_RELOC_390_PLTOFF16 BFD_RELOC_390_PLTOFF32 BFD_RELOC_390_PLTOFF64 BFD_RELOC_390_TLS_LOAD BFD_RELOC_390_TLS_GDCALL BFD_RELOC_390_TLS_LDCALL BFD_RELOC_390_TLS_GD32 BFD_RELOC_390_TLS_GD64 BFD_RELOC_390_TLS_GOTIE12 BFD_RELOC_390_TLS_GOTIE32 BFD_RELOC_390_TLS_GOTIE64 BFD_RELOC_390_TLS_LDM32 BFD_RELOC_390_TLS_LDM64 BFD_RELOC_390_TLS_IE32 BFD_RELOC_390_TLS_IE64 BFD_RELOC_390_TLS_IEENT BFD_RELOC_390_TLS_LE32 BFD_RELOC_390_TLS_LE64 BFD_RELOC_390_TLS_LDO32 BFD_RELOC_390_TLS_LDO64 BFD_RELOC_390_TLS_DTPMOD BFD_RELOC_390_TLS_DTPOFF BFD_RELOC_390_TLS_TPOFF BFD_RELOC_390_20 BFD_RELOC_390_GOT20 BFD_RELOC_390_GOTPLT20 BFD_RELOC_390_TLS_GOTIE20 BFD_RELOC_IP2K_FR9 BFD_RELOC_IP2K_BANK BFD_RELOC_IP2K_ADDR16CJP BFD_RELOC_IP2K_PAGE3 BFD_RELOC_IP2K_LO8DATA BFD_RELOC_IP2K_HI8DATA BFD_RELOC_IP2K_EX8DATA BFD_RELOC_IP2K_LO8INSN BFD_RELOC_IP2K_HI8INSN BFD_RELOC_IP2K_PC_SKIP BFD_RELOC_IP2K_TEXT BFD_RELOC_IP2K_FR_OFFSET BFD_RELOC_VPE4KMATH_DATA BFD_RELOC_VPE4KMATH_INSN BFD_RELOC_VTABLE_INHERIT BFD_RELOC_VTABLE_ENTRY BFD_RELOC_IA64_IMM14 BFD_RELOC_IA64_IMM22 BFD_RELOC_IA64_IMM64 BFD_RELOC_IA64_DIR32MSB BFD_RELOC_IA64_DIR32LSB BFD_RELOC_IA64_DIR64MSB BFD_RELOC_IA64_DIR64LSB BFD_RELOC_IA64_GPREL22 BFD_RELOC_IA64_GPREL64I BFD_RELOC_IA64_GPREL32MSB BFD_RELOC_IA64_GPREL32LSB BFD_RELOC_IA64_GPREL64MSB BFD_RELOC_IA64_GPREL64LSB BFD_RELOC_IA64_LTOFF22 BFD_RELOC_IA64_LTOFF64I BFD_RELOC_IA64_PLTOFF22 BFD_RELOC_IA64_PLTOFF64I BFD_RELOC_IA64_PLTOFF64MSB BFD_RELOC_IA64_PLTOFF64LSB BFD_RELOC_IA64_FPTR64I BFD_RELOC_IA64_FPTR32MSB BFD_RELOC_IA64_FPTR32LSB BFD_RELOC_IA64_FPTR64MSB BFD_RELOC_IA64_FPTR64LSB BFD_RELOC_IA64_PCREL21B BFD_RELOC_IA64_PCREL21BI BFD_RELOC_IA64_PCREL21M BFD_RELOC_IA64_PCREL21F BFD_RELOC_IA64_PCREL22 BFD_RELOC_IA64_PCREL60B BFD_RELOC_IA64_PCREL64I BFD_RELOC_IA64_PCREL32MSB BFD_RELOC_IA64_PCREL32LSB BFD_RELOC_IA64_PCREL64MSB BFD_RELOC_IA64_PCREL64LSB BFD_RELOC_IA64_LTOFF_FPTR22 BFD_RELOC_IA64_LTOFF_FPTR64I BFD_RELOC_IA64_SEGREL32MSB BFD_RELOC_IA64_SEGREL32LSB BFD_RELOC_IA64_SEGREL64MSB BFD_RELOC_IA64_SEGREL64LSB BFD_RELOC_IA64_SECREL32MSB BFD_RELOC_IA64_SECREL32LSB BFD_RELOC_IA64_SECREL64MSB BFD_RELOC_IA64_SECREL64LSB BFD_RELOC_IA64_REL32MSB BFD_RELOC_IA64_REL32LSB BFD_RELOC_IA64_REL64MSB BFD_RELOC_IA64_REL64LSB BFD_RELOC_IA64_LTV32MSB BFD_RELOC_IA64_LTV32LSB BFD_RELOC_IA64_LTV64MSB BFD_RELOC_IA64_LTV64LSB BFD_RELOC_IA64_IPLTMSB BFD_RELOC_IA64_IPLTLSB BFD_RELOC_IA64_COPY BFD_RELOC_IA64_LTOFF22X BFD_RELOC_IA64_LDXMOV BFD_RELOC_IA64_TPREL14 BFD_RELOC_IA64_TPREL22 BFD_RELOC_IA64_TPREL64I BFD_RELOC_IA64_TPREL64MSB BFD_RELOC_IA64_TPREL64LSB BFD_RELOC_IA64_LTOFF_TPREL22 BFD_RELOC_IA64_DTPMOD64MSB BFD_RELOC_IA64_DTPMOD64LSB BFD_RELOC_IA64_LTOFF_DTPMOD22 BFD_RELOC_IA64_DTPREL14 BFD_RELOC_IA64_DTPREL22 BFD_RELOC_IA64_DTPREL64I BFD_RELOC_IA64_DTPREL32MSB BFD_RELOC_IA64_DTPREL32LSB BFD_RELOC_IA64_DTPREL64MSB BFD_RELOC_IA64_DTPREL64LSB BFD_RELOC_IA64_LTOFF_DTPREL22 BFD_RELOC_M68HC11_HI8 BFD_RELOC_M68HC11_LO8 BFD_RELOC_M68HC11_3B BFD_RELOC_M68HC11_RL_JUMP BFD_RELOC_M68HC11_RL_GROUP BFD_RELOC_M68HC11_LO16 BFD_RELOC_M68HC11_PAGE BFD_RELOC_M68HC11_24 BFD_RELOC_M68HC12_5B BFD_RELOC_16C_NUM08 BFD_RELOC_16C_NUM08_C BFD_RELOC_16C_NUM16 BFD_RELOC_16C_NUM16_C BFD_RELOC_16C_NUM32 BFD_RELOC_16C_NUM32_C BFD_RELOC_16C_DISP04 BFD_RELOC_16C_DISP04_C BFD_RELOC_16C_DISP08 BFD_RELOC_16C_DISP08_C BFD_RELOC_16C_DISP16 BFD_RELOC_16C_DISP16_C BFD_RELOC_16C_DISP24 BFD_RELOC_16C_DISP24_C BFD_RELOC_16C_DISP24a BFD_RELOC_16C_DISP24a_C BFD_RELOC_16C_REG04 BFD_RELOC_16C_REG04_C BFD_RELOC_16C_REG04a BFD_RELOC_16C_REG04a_C BFD_RELOC_16C_REG14 BFD_RELOC_16C_REG14_C BFD_RELOC_16C_REG16 BFD_RELOC_16C_REG16_C BFD_RELOC_16C_REG20 BFD_RELOC_16C_REG20_C BFD_RELOC_16C_ABS20 BFD_RELOC_16C_ABS20_C BFD_RELOC_16C_ABS24 BFD_RELOC_16C_ABS24_C BFD_RELOC_16C_IMM04 BFD_RELOC_16C_IMM04_C BFD_RELOC_16C_IMM16 BFD_RELOC_16C_IMM16_C BFD_RELOC_16C_IMM20 BFD_RELOC_16C_IMM20_C BFD_RELOC_16C_IMM24 BFD_RELOC_16C_IMM24_C BFD_RELOC_16C_IMM32 BFD_RELOC_16C_IMM32_C BFD_RELOC_CRX_REL4 BFD_RELOC_CRX_REL8 BFD_RELOC_CRX_REL8_CMP BFD_RELOC_CRX_REL16 BFD_RELOC_CRX_REL24 BFD_RELOC_CRX_REL32 BFD_RELOC_CRX_REGREL12 BFD_RELOC_CRX_REGREL22 BFD_RELOC_CRX_REGREL28 BFD_RELOC_CRX_REGREL32 BFD_RELOC_CRX_ABS16 BFD_RELOC_CRX_ABS32 BFD_RELOC_CRX_NUM8 BFD_RELOC_CRX_NUM16 BFD_RELOC_CRX_NUM32 BFD_RELOC_CRX_IMM16 BFD_RELOC_CRX_IMM32 BFD_RELOC_CRX_SWITCH8 BFD_RELOC_CRX_SWITCH16 BFD_RELOC_CRX_SWITCH32 BFD_RELOC_CRIS_BDISP8 BFD_RELOC_CRIS_UNSIGNED_5 BFD_RELOC_CRIS_SIGNED_6 BFD_RELOC_CRIS_UNSIGNED_6 BFD_RELOC_CRIS_SIGNED_8 BFD_RELOC_CRIS_UNSIGNED_8 BFD_RELOC_CRIS_SIGNED_16 BFD_RELOC_CRIS_UNSIGNED_16 BFD_RELOC_CRIS_LAPCQ_OFFSET BFD_RELOC_CRIS_UNSIGNED_4 BFD_RELOC_CRIS_COPY BFD_RELOC_CRIS_GLOB_DAT BFD_RELOC_CRIS_JUMP_SLOT BFD_RELOC_CRIS_RELATIVE BFD_RELOC_CRIS_32_GOT BFD_RELOC_CRIS_16_GOT BFD_RELOC_CRIS_32_GOTPLT BFD_RELOC_CRIS_16_GOTPLT BFD_RELOC_CRIS_32_GOTREL BFD_RELOC_CRIS_32_PLT_GOTREL BFD_RELOC_CRIS_32_PLT_PCREL BFD_RELOC_860_COPY BFD_RELOC_860_GLOB_DAT BFD_RELOC_860_JUMP_SLOT BFD_RELOC_860_RELATIVE BFD_RELOC_860_PC26 BFD_RELOC_860_PLT26 BFD_RELOC_860_PC16 BFD_RELOC_860_LOW0 BFD_RELOC_860_SPLIT0 BFD_RELOC_860_LOW1 BFD_RELOC_860_SPLIT1 BFD_RELOC_860_LOW2 BFD_RELOC_860_SPLIT2 BFD_RELOC_860_LOW3 BFD_RELOC_860_LOGOT0 BFD_RELOC_860_SPGOT0 BFD_RELOC_860_LOGOT1 BFD_RELOC_860_SPGOT1 BFD_RELOC_860_LOGOTOFF0 BFD_RELOC_860_SPGOTOFF0 BFD_RELOC_860_LOGOTOFF1 BFD_RELOC_860_SPGOTOFF1 BFD_RELOC_860_LOGOTOFF2 BFD_RELOC_860_LOGOTOFF3 BFD_RELOC_860_LOPC BFD_RELOC_860_HIGHADJ BFD_RELOC_860_HAGOT BFD_RELOC_860_HAGOTOFF BFD_RELOC_860_HAPC BFD_RELOC_860_HIGH BFD_RELOC_860_HIGOT BFD_RELOC_860_HIGOTOFF BFD_RELOC_OPENRISC_ABS_26 BFD_RELOC_OPENRISC_REL_26 BFD_RELOC_H8_DIR16A8 BFD_RELOC_H8_DIR16R8 BFD_RELOC_H8_DIR24A8 BFD_RELOC_H8_DIR24R8 BFD_RELOC_H8_DIR32A16 BFD_RELOC_XSTORMY16_REL_12 BFD_RELOC_XSTORMY16_12 BFD_RELOC_XSTORMY16_24 BFD_RELOC_XSTORMY16_FPTR16 BFD_RELOC_XC16X_PAG BFD_RELOC_XC16X_POF BFD_RELOC_XC16X_SEG BFD_RELOC_XC16X_SOF BFD_RELOC_VAX_GLOB_DAT BFD_RELOC_VAX_JMP_SLOT BFD_RELOC_VAX_RELATIVE BFD_RELOC_MT_PC16 BFD_RELOC_MT_HI16 BFD_RELOC_MT_LO16 BFD_RELOC_MT_GNU_VTINHERIT BFD_RELOC_MT_GNU_VTENTRY BFD_RELOC_MT_PCINSN8 BFD_RELOC_MSP430_10_PCREL BFD_RELOC_MSP430_16_PCREL BFD_RELOC_MSP430_16 BFD_RELOC_MSP430_16_BYTE BFD_RELOC_MSP430_2X_PCREL BFD_RELOC_MSP430_RL_PCREL BFD_RELOC_IQ2000_OFFSET_16 BFD_RELOC_IQ2000_OFFSET_21 BFD_RELOC_IQ2000_UHI16 BFD_RELOC_XTENSA_RTLD BFD_RELOC_XTENSA_GLOB_DAT BFD_RELOC_XTENSA_JMP_SLOT BFD_RELOC_XTENSA_RELATIVE BFD_RELOC_XTENSA_PLT BFD_RELOC_XTENSA_DIFF8 BFD_RELOC_XTENSA_DIFF16 BFD_RELOC_XTENSA_DIFF32 BFD_RELOC_XTENSA_SLOT0_OP BFD_RELOC_XTENSA_SLOT1_OP BFD_RELOC_XTENSA_SLOT2_OP BFD_RELOC_XTENSA_SLOT3_OP BFD_RELOC_XTENSA_SLOT4_OP BFD_RELOC_XTENSA_SLOT5_OP BFD_RELOC_XTENSA_SLOT6_OP BFD_RELOC_XTENSA_SLOT7_OP BFD_RELOC_XTENSA_SLOT8_OP BFD_RELOC_XTENSA_SLOT9_OP BFD_RELOC_XTENSA_SLOT10_OP BFD_RELOC_XTENSA_SLOT11_OP BFD_RELOC_XTENSA_SLOT12_OP BFD_RELOC_XTENSA_SLOT13_OP BFD_RELOC_XTENSA_SLOT14_OP BFD_RELOC_XTENSA_SLOT0_ALT BFD_RELOC_XTENSA_SLOT1_ALT BFD_RELOC_XTENSA_SLOT2_ALT BFD_RELOC_XTENSA_SLOT3_ALT BFD_RELOC_XTENSA_SLOT4_ALT BFD_RELOC_XTENSA_SLOT5_ALT BFD_RELOC_XTENSA_SLOT6_ALT BFD_RELOC_XTENSA_SLOT7_ALT BFD_RELOC_XTENSA_SLOT8_ALT BFD_RELOC_XTENSA_SLOT9_ALT BFD_RELOC_XTENSA_SLOT10_ALT BFD_RELOC_XTENSA_SLOT11_ALT BFD_RELOC_XTENSA_SLOT12_ALT BFD_RELOC_XTENSA_SLOT13_ALT BFD_RELOC_XTENSA_SLOT14_ALT BFD_RELOC_XTENSA_OP0 BFD_RELOC_XTENSA_OP1 BFD_RELOC_XTENSA_OP2 BFD_RELOC_XTENSA_ASM_EXPAND BFD_RELOC_XTENSA_ASM_SIMPLIFY BFD_RELOC_Z80_DISP8 BFD_RELOC_Z8K_DISP7 BFD_RELOC_Z8K_CALLR BFD_RELOC_Z8K_IMM4L VRT32 coff-Intel-little coff-Intel-big coff-z8k BFD_RELOC_MIPS_TLS_DTPREL_HI16 BFD_RELOC_MIPS_TLS_DTPREL_LO16 BFD_RELOC_FRV_FUNCDESC_GOTOFF12 BFD_RELOC_FRV_FUNCDESC_GOTOFFHI BFD_RELOC_FRV_FUNCDESC_GOTOFFLO BFD_RELOC_X86_64_GOTPC32_TLSDESC BFD_RELOC_PPC64_PLTGOT16_LO_DS BFD_RELOC_PPC64_TPREL16_HIGHER BFD_RELOC_PPC64_TPREL16_HIGHERA BFD_RELOC_PPC64_TPREL16_HIGHEST BFD_RELOC_PPC64_TPREL16_HIGHESTA BFD_RELOC_PPC64_DTPREL16_LO_DS BFD_RELOC_PPC64_DTPREL16_HIGHER BFD_RELOC_PPC64_DTPREL16_HIGHERA BFD_RELOC_PPC64_DTPREL16_HIGHEST BFD_RELOC_PPC64_DTPREL16_HIGHESTA BFD_RELOC_THUMB_PCREL_BRANCH12 BFD_RELOC_THUMB_PCREL_BRANCH20 BFD_RELOC_THUMB_PCREL_BRANCH23 BFD_RELOC_THUMB_PCREL_BRANCH25 BFD_RELOC_ARM_T32_CP_OFF_IMM_S2 BFD_RELOC_SH_IMM_MEDLOW16_PCREL BFD_RELOC_SH_IMM_MEDHI16_PCREL BFD_RELOC_BFIN_12_PCREL_JUMP_S BFD_RELOC_BFIN_24_PCREL_CALL_X BFD_RELOC_BFIN_24_PCREL_JUMP_L BFD_RELOC_BFIN_FUNCDESC_GOT17M4 BFD_RELOC_BFIN_FUNCDESC_GOTOFF17M4 BFD_RELOC_BFIN_FUNCDESC_GOTOFFHI BFD_RELOC_BFIN_FUNCDESC_GOTOFFLO BFD_RELOC_V850_SDA_16_16_OFFSET BFD_RELOC_V850_SDA_15_16_OFFSET BFD_RELOC_V850_ZDA_16_16_OFFSET BFD_RELOC_V850_ZDA_15_16_OFFSET BFD_RELOC_V850_TDA_16_16_OFFSET BFD_RELOC_V850_SDA_16_16_SPLIT_OFFSET BFD_RELOC_V850_ZDA_16_16_SPLIT_OFFSET BFD_RELOC_V850_CALLT_6_7_OFFSET BFD_RELOC_V850_CALLT_16_16_OFFSET BFD_RELOC_V850_LO16_SPLIT_OFFSET BFD_RELOC_MCORE_PCREL_IMM11BY2 BFD_RELOC_MCORE_PCREL_JSR_IMM11BY2 BFD_RELOC_MMIX_PUSHJ_STUBBABLE BFD_RELOC_MMIX_BASE_PLUS_OFFSET BFD_RELOC_IA64_LTOFF_FPTR32MSB BFD_RELOC_IA64_LTOFF_FPTR32LSB BFD_RELOC_IA64_LTOFF_FPTR64MSB BFD_RELOC_IA64_LTOFF_FPTR64LSB BFD_RELOC_MSP430_16_PCREL_BYTE @@overflow: BFD_RELOC_UNUSED@@ /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/reloc.c w w w w w w w x x &x 9x Lx _x rx x x x x x x y y 0y Hy [y ry y y y y y y z z 5z Mz `z wz z z z z z z { *{ 8{ I{ _{ u{ { { { { { { { | | -| C| Y| o| | | | | | | } %} :} O} f} }} } } } } } } ~ (~ @~ X~ p~ ~ ~ ~ ~ ~ ~ ~ & : S i . K i + H e - I ` x ' = S j $ < W r $ 9 O g } ! 4 L d | 3 H ^ r + F a 2 I _ u 5 @ ` R i 4 L d ~ 2 M e } % 8 O g ~ , E ] u ) @ V p ! 8 O i 5 O m 7 O g ( @ X p 6 R e | 0 M f 7 Q j + D ` | ; Y r 2 F ] w 1 K h . L j $ D h 2 L e ~ 4 T t 3 I ^ v $ < W r # > V h z " 8 R n 0 C W n * ? Y s & < N d z : V o " ; T p + D ] s 6 J ^ u ! 8 P g ~ " 9 P f ~ 4 T * H t f + @ T h " 7 L c x ) A [ m / G _ q ' @ T l 8 T l @ ' ` E c ) B V p 7 8 U s X & ? X q | 3 I d w % ? Y s / B T d y 2 H _ u % < S k ' A [ u 1 I b { ) > U l ' @ W l % ? Y s # : S l . F ` z 8 S n 7 O g 5 O i # > Y t # : Q f { % : Q f } - A W k ) = S g } " 6 J a x 1 G ^ u " = Y s . G d & ; N c v " : R j ' A [ p ) = Q e y ( = W q < 5 O i - G a { 4 O j ' B ] x . C _ } \ bfd_get_reloc_size a + G h a \ U + + + N bfd_check_overflow bfd_perform_relocation N 2 7 B s / _bfd_relocate_contents bfd_generic_get_relocated_section_contents *IND* *COM* *UND* .%d @ p X @ bfd_get_unique_section_name bfd_map_over_sections /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/section.c code *DEBUG* .drectve .edata .fini .idata .init .pdata .rdata .sbss .scommon zerovars %c%c%c%c%c%c%c .stabstr Unsupported .stab relocation C; b < t d A N p N I i R e Y t _ i f t l p s r r z s c g t d b G a ~ & ; L \ m G * = M ^ r i[3-7]86-*-sysv4* i[3-7]86-*-unixware* i[3-7]86-*-elf i[3-7]86-*-sco3.2v5* i[3-7]86-*-dgux* i[3-7]86-*-sysv5* i[3-7]86-*-solaris2* i[3-7]86-*-kaos* i[3-7]86-*-nto* i[3-7]86-*-aros* i[3-7]86-*-chorus* i[3-7]86-*-rtems* i[3-7]86-*-netbsdelf* i[3-7]86-*-netbsd*-gnu* i[3-7]86-*-knetbsd*-gnu i[3-7]86-*-openbsd* i[3-7]86-*-netware* i[3-7]86-*-linux*aout* i[3-7]86-*-linux-* i[3-7]86-*-lynxos* i[3-7]86-*-gnu* i[3-7]86-*-moss* i[3-7]86-*-beoself* i[3-7]86-*-beos* i[3-7]86-*-rdos* i[3-7]86-*-chaos bfd_hash_replace ! ;A /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/hash.c _bfd_generic_link_add_one_symbol / 1 < V 6 c L V ( _bfd_generic_link_output_symbols ) 6 B set_symbol_from_hash _bfd_generic_link_write_global_symbol _bfd_generic_reloc_link_order _bfd_default_link_order _bfd_generic_section_already_linked __real_ __imp_%s /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/linker.c %B: indirect symbol `%s' to `%s' is a loop Attempt to do relocatable link with %s input and %s output %B: warning: ignoring duplicate section `%A' %B: warning: duplicate section `%A' has different size symbolsrec .sec%d $$ $$ %-5s %s @ w s s K s s K ; 6 ; ; . 4 B }V 7 % ^ B B C rC ~ } ; ; B + } ' * + F w s s K s s K ; 6 ; ; . 4 ~B }V 7 % ^ B B C rC ~ } ; ; B + } ' * + 0123456789ABCDEF 4 3 4 4 / 4 / 4 5 5 O? O? Y? > = = = > Y? O? %B:%d: Unexpected character `%s' in S-record file /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/srec.c _binary_%s_%s j { s s K s s K ; C ; ; C D % ^ /E E F ~ } ` F G + } ' * + Warning: Writing section `%s' to huge (ie negative) file offset 0x%lx. tekhex %0781010 w s s K s s K ; L ; ; PL 4 zR }V KO % ^ >L L U fU QU ~ } O O U + } ' * + 0123456789ABCDEF J J J J J nJ J J J pass_over out tekhex_write_object_contents T T T T S S S S S S S S S S T S S S S S T S S S S S S S S S S S T T S T S S S S S S S S S S T S S S S T /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/tekhex.c ihex s s K s s K ; +_ ; ; U 4 \ }V V % ^ ~ ^ Y $_ + } ' * + 0123456789ABCDEF |c Bd id e d e %B:%d: unexpected character `%s' in Intel Hex file /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/ihex.c %B: internal error in ihex_read_section %B: bad section length in ihex_read_section %s: address 0x%s out of range for Intel Hex file %B:%u: bad checksum in Intel Hex file (expected %u, found %u) %B:%u: bad extended address record length in Intel Hex file %B:%u: bad extended start address length in Intel Hex file %B:%u: bad extended linear address record length in Intel Hex file %B:%u: bad extended linear start address length in Intel Hex file %B:%u: unrecognized ihex type %u in Intel Hex file read_address i l i k l $j @j \j k j l l l [l ;k tj l k $j @j \j tj j scan_unit_for_symbols d /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/dwarf2.c Dwarf Error: Can't find .debug_str section. Dwarf Error: DW_FORM_strp offset (%lu) greater than or equal to .debug_str size (%lu). Dwarf Error: Invalid or unhandled FORM value: %u. Dwarf Error: mangled line number section (bad file number). Dwarf Error: Could not find abbrev number %u. Dwarf Error: Can't find .debug_ranges section. Dwarf Error: found dwarf version '%u', this reader only handles version 2 information. Dwarf Error: found address size '%u', this reader can not handle sizes greater than '%u'. Dwarf Error: found address size '%u', this reader can only handle address sizes '2', '4' and '8'. Dwarf Error: Can't find .debug_abbrev section. Dwarf Error: Abbrev offset (%lu) greater than or equal to .debug_abbrev size (%lu). Dwarf Error: Bad abbrev number: %u. Dwarf Error: Can't find .debug_line section. Dwarf Error: Line offset (%lu) greater than or equal to .debug_line size (%lu). Dwarf Error: mangled line number section. .debug_str .debug_ranges .debug_abbrev .debug_info .gnu.linkonce.wi. .debug_line elf32-i386-vxworks elf32-i386-freebsd R_386_NONE R_386_32 R_386_PC32 R_386_GOT32 R_386_PLT32 R_386_COPY R_386_GLOB_DAT R_386_JUMP_SLOT R_386_RELATIVE R_386_GOTOFF R_386_GOTPC R_386_TLS_TPOFF R_386_TLS_IE R_386_TLS_GOTIE R_386_TLS_LE R_386_TLS_GD R_386_TLS_LDM R_386_16 R_386_PC16 R_386_8 R_386_PC8 R_386_TLS_LDO_32 R_386_TLS_IE_32 R_386_TLS_LE_32 R_386_TLS_DTPMOD32 R_386_TLS_DTPOFF32 R_386_TLS_TPOFF32 R_386_TLS_GOTDESC R_386_TLS_DESC_CALL R_386_TLS_DESC R_386_GNU_VTINHERIT R_386_GNU_VTENTRY FreeBSD .reg .got.plt .rel.got .rel.plt .dynbss .rel.bss %B: bad symbol index: %d /usr/lib/libc.so.1 _TLS_MODULE_BASE_ .reloc .dynamic m ? / 6 / ` 6 / ` ; K 8 4 B s }V 3 C # t Z a 7T O c w ; B G H R ] 8 7 ^ < [ V v% ; } ` 8 } k# Jb * X " ! w R A K K o 9 B )D t ] #* d 6 i Z p ` $ . Ng % ? / 6 / ` 6 / ` ; K 8 4 B s }V 3 C # t Z a 7T O c w ; B G H R ] 8 7 ^ < [ V v% ; } ` 8 H } k# Jb * X " ! w R A K K o 9 B )D t ] #* 6 i Z p ` $ . Ng % ? / 6 / ` 6 / ` ; K 8 4 B s }V 3 C # t Z a 7T O c w ; B G H R ] 8 7 ^ < [ V v% ; } ` 8 H } k# Jb * X " ! w R ` A K K o 9 B )D t ] #* 6 i Z p ` $ . Ng % 5 % h % h " " " " " " " " " " " " " , " 9 " I " V " c " q " z " " " ! " " " # " $ " % " & ' " ( " ) " & 5 ^ I create_got_section elf_i386_create_dynamic_sections g g \ { r \ \ \ \ \ \ \ \ \ \ \ \ \ { \ \ \ \ \ { { e _ D D L _ _ _ _ _ _ _ _ _ _ _ x _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ elf_i386_size_dynamic_sections elf_i386_relocate_section e e - e + e t& s W 7 elf_i386_finish_dynamic_symbol elf_i386_finish_dynamic_sections ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' 4 %B: invalid relocation type %d /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/elf32-i386.c %B: `%s' accessed both as normal and thread local symbol %B: bad relocation section name `%s' dynamic variable `%s' is zero size %B: unrecognized relocation (0x%x) in section `%A' %B: relocation R_386_GOTOFF against protected function `%s' can not be used when making a shared object %B(%A+0x%lx): unresolvable %s relocation against symbol `%s' %B(%A+0x%lx): reloc against `%s': error %d __GOTT_INDEX__ __GOTT_BASE__ .rela.plt.unloaded .rel.plt.unloaded 4 ( R + B bfd_elf32_swap_symbol_in bfd_elf32_swap_symbol_out bfd_elf32_write_relocs 1 1 * /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/elfcode.h %s: version count (%ld) does not match symbol count (%ld) %s(%s): relocation %d has invalid symbol index %ld warning: %s has a corrupt string table index - ignoring LARGE_COMMON SHT_NULL SHT_PROGBITS SHT_SYMTAB SHT_STRTAB SHT_RELA SHT_HASH SHT_DYNAMIC SHT_NOTE SHT_NOBITS SHT_REL SHT_SHLIB SHT_DYNSYM .tbss .tdata .shstrtab .strtab .symtab .rodata1 .rela .preinit_array .note.GNU-stack .line .init_array .hash .gnu.linkonce.b .gnu.version .gnu.version_d .gnu.version_r .gnu.liblist .gnu.conflict .fini_array .data1 .debug_aranges .dynstr .dynsym .comment (null) RELRO elf %lx (*none*) %s Base %-11s .internal .hidden .protected 0x%02x %B: invalid SHT_GROUP entry .gnu.linkonce %s%d%s %s%db Program Header: 0x%lx %8s off 0x vaddr 0x paddr 0x align 2**%u filesz 0x memsz 0x flags %c%c%c Dynamic Section: USED FILTER PLTRELSZ PLTGOT RELASZ RELAENT STRSZ SYMENT INIT FINI SONAME RPATH SYMBOLIC RELENT DEBUG TEXTREL JMPREL BIND_NOW FINI_ARRAY FINI_ARRAYSZ RUNPATH PREINIT_ARRAY PREINIT_ARRAYSZ CHECKSUM PLTPADSZ MOVEENT MOVESZ FEATURE POSFLAG_1 SYMINSZ SYMINENT CONFIG DEPAUDIT PLTPAD MOVETAB SYMINFO RELACOUNT RELCOUNT FLAGS_1 VERSYM VERDEF VERDEFNUM VERNEED VERNEEDNUM AUXILIARY %-11s Version definitions: %d 0x%2.2x 0x%8.8lx %s Version References: required from %s: Section to Segment mapping: LOPROC+%7.7x LOOS+%7.7x %8.8x %2.2d: %14.14s: *unknown* .symtab_shndx .gnu.libstr %s/%d %s/%ld null load NetBSD-CORE .note.netbsdcore.procinfo .reg2 QNX .qnx_core_info .qnx_core_status/%ld .qnx_core_status LINUX .reg-xfp .auxv shlib proc .rela.plt E' N' [' f' q' z' ' ' ' ' ' ' ' ' ' ' ' ' ' ' , ( ( f ( '( -( u =( o J( o Y( o h( o u( Y ( ( p a C 5 ( ( ( ( C; S P ( u bfd_elf_set_group_contents rewrite_elf_program_header _bfd_elf_get_lineno get_program_header_size _bfd_elf_no_info_to_howto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x %B: invalid string offset %u >= %lu for section `%s' %B: warning: sh_link not set for section `%A' %B: sh_link [%d] in section `%A' is incorrect %B: unknown [%d] section `%s' in group [%s] /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/elf.c %B: invalid link %lu for reloc section %s (index %u) %B: no group info for section %A 0x%8.8lx 0x%2.2x %2.2d %s %B: Not enough room for program headers (allocated %u, need %u) Segment Sections... %B: The first section in the PT_DYNAMIC segment is not the .dynamic section %B: Not enough room for program headers, try linking with -N %B: section %A lma 0x%lx overlaps previous sections %B: warning: allocated section `%s' not in segment %B: symbol `%s' required but not present %B: warning: Empty loadable segment detected, is this intentional ? %B: sh_link of section `%A' points to discarded section `%A' of `%B' %B: sh_link of section `%A' points to removed section `%A' of `%B' Unable to find equivalent output section for symbol '%s' from section '%s' %B: unsupported relocation type %s % C a @ ) $ _bfd_elf_link_output_relocs elf_link_add_object_symbols bfd_elf_size_dynsym_hash_dynstr elf_link_adjust_relocs elf_link_check_versioned_symbol T V V V V V elf_link_output_extsym [X Y Y Y Y Z X elf_reloc_link_order _bfd_elf_section_already_linked _GLOBAL_OFFSET_TABLE_ .eh_frame_hdr _PROCEDURE_LINKAGE_TABLE_ .rela.bss .tcommon %s: undefined version: %s .eh_frame .gcc_except_table .gcc_except_table. .gnu.linkonce. %s: TLS definition in %B section %A mismatches non-TLS definition in %B section %A %s: TLS reference in %B mismatches non-TLS reference in %B %s: TLS definition in %B section %A mismatches non-TLS reference in %B %s: TLS reference in %B mismatches non-TLS definition in %B section %A /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/elflink.c %B: unexpected redefinition of indirect versioned symbol `%s' %B: undefined versioned symbol name %s %B: bad reloc symbol index (0x%lx >= 0x%lx) for offset 0x%lx in section `%A' %B: relocation size mismatch in %B section %A warning: type and size of dynamic symbol `%s' are not defined %B: %s: invalid version %u (max %d) %B: %s: invalid needed version %d Warning: alignment %u of symbol `%s' in %B is smaller than %u in %B Warning: size of symbol `%s' changed from %lu in %B to %lu in %B Warning: type of symbol `%s' changed from %d to %d in %B %s: invalid DSO for symbol `%s' definition %B: .preinit_array section is not allowed in DSO %B: Too many sections: %d (>= %d) %B: %s symbol `%s' in %B is referenced by DSO %B: could not find output section %A for input section %A %B: %s symbol `%s' isn't defined %A has both ordered [`%A' in %B] and unordered [`%A' in %B] sections %A has both ordered and unordered sections error: %B contains a reloc (0x%s) for section %A that references a non-existent global symbol %X`%s' referenced in section `%A' of %B: defined in discarded section `%A' of %B Not enough memory to sort relocations %B: could not find output section %s warning: %s section has zero size warning: creating a DT_TEXTREL in a shared object. Warning: gc-sections option ignored %B: %A+%lu: No symbol found for INHERIT %B: ignoring duplicate section `%A' %B: duplicate section `%A' has different size %B: warning: could not read contents of section `%A' %B: warning: duplicate section `%A' has different contents /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/elf-strtab.c /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/elf-eh-frame.c eh _bfd_elf_write_section_eh_frame " : N g g g g g g P h 5 __SHARABLE_CONFLICTS__ .linux-dynamic __PLT_ __NEEDS_SHRLIB_ __GOT_ __BUILTIN_FIXUPS__ h 7 _ 6 / ` 6 / ` ; Y 8 ; 4 }V '$ '$ ' % ; B G H }M ] 8 7 ^ nQ p , % ~ { | 0 $ } , p * + `I S X linux_tally_symbols bfd_i386linux_size_dynamic_sections /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/i386linux.c Output file requires shared library `%s' Output file requires shared library `%s.so.%s' Symbol %s not defined for fixups Warning: fixup count mismatch DISP32 DISP64 GOT_REL BASE16 BASE32 JMP_TABLE WDISP30 SFA_BASE SFA_OFF13 BASE10 JMP_TBL SEGOFF16 R_SPARC_NONE R_SPARC_REV32 (%d) %4x %2x %2x %-5s %04x %02x %02x .o __DYNAMIC Z n[ @ Q~ J @ J J J J J ( z Z n[ Q~ J J ? | ? { ? Z ? 7Z } J J K _} v} ? | | ? K ? K K K -K Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y ! Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y + Y Y 5 ? Y Y Y Y I Y S ] Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y aout_32_some_aout_object_p C aout_32_adjust_sizes_and_vmas U | U U q q ` ` K K U 8 % U U $ $ 7 7 a a aout_link_add_symbols r& ( r& {( r& ^( r& ( r& A( 6( ( r& ' ' ' ' ' r& & O) O) 2) 2) ) ) ( ( r& ( ( r& aout_link_write_other_symbol 2 2 2 3 3 B4 2 aout_reloc_index_to_section aout_link_input_section_ext aout_link_input_section_std A > A > A > A > A AA > AA > A > A > A B > B > "B > 3B > DB UB > UB > B > B > B H > H > }H > H > H F > F > F > G > G aout_link_reloc_link_order /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/aoutx.h %s: can not represent section `%s' in a.out object file format %s: can not represent section for symbol `%s' in a.out object file format %s: relocatable link from %s to %s not supported efi-app-ia32 dir32 rva32 secrel32 .ctors .dtors pei- efi-app- %B: Unhandled import type; %x .idata$4 .idata$5 .idata$6 __imp_ __IMPORT_DESCRIPTOR_ STYP_DSECT STYP_GROUP STYP_COPY STYP_OVER IMAGE_SCN_LNK_OTHER IMAGE_SCN_MEM_NOT_CACHED .lib /%lu .bf ` ? _/ 6 / ` 6 / ` ; pq 8 pq uk 4 }V { m l % ; B G H R ] 8 7 ^ x ; lh ~ 6 } [ h ) } T * + c % f ' h ( i h i h E k } 3 M y W f f d ` d ` d ` d d Z d n[ d d Q~ d J t ` ` coff_i386_reloc h h 4h h h eh h ^h h Wh h Ph h Ih Bh h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h ;h pe_ILF_save_relocs pe_ILF_build_a_bfd handle_COMDAT coff_set_alignment_hook coff_write_relocs ! u dummy_reloc16_estimate dummy_reloc16_extra_cases /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/coff-i386.c /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/peicode.h %B: Unrecognised machine type (0x%x) in Import Library Format archive %B: Recognised but unhandled machine type (0x%x) in Import Library Format archive %B: size field is zero in Import Library Format header %B: string not null terminated in ILF object file. %B: Unrecognised import type; %x %B: Unrecognised import name type; %x %B: Warning: Ignoring section flag IMAGE_SCN_MEM_NOT_PAGED in section %s /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/coffcode.h %B: warning: COMDAT symbol '%s' does not match section name '%s' %B (%s): Section flag %s (0x%x) ignored %s: warning: claims to have 0xffff relocs, without overflow warning: %B: local symbol `%s' has no section %B: Unrecognized storage class %d for %s symbol `%s' %B: warning: line number table read failed %B: warning: illegal symbol index %ld in line numbers %B: warning: duplicate line number information for `%s' %B: warning: illegal symbol index %ld in relocs %B: illegal relocation type %d at address 0x%lx Export Directory [.edata (or where ever we found it)] Import Directory [parts of .idata] Base Relocation Directory [.reloc] Thread Storage Directory [.tls] Import Address Table Directory %s: line number overflow: 0x%lx > 0xffff There is an export table, but the section containing it could not be found There is an export table in %s, but it does not fit into that section There is an export table in %s at 0x%lx The Export Tables (interpreted %s section contents) Export Address Table %08lx [Name Pointer/Ordinal] Table %08lx Export Address Table -- Ordinal Base %ld [%4ld] +base[%4ld] %04lx %s -- %s [Ordinal/Name Pointer] Table There is an import table in %s at 0x%lx The Import Tables (interpreted %s section contents) vma: Hint Time Forward DLL First Table Stamp Chain Name Thunk %08lx %08lx %08lx %08lx %08lx vma: Hint/Ord Member-Name Bound-To There is a first thunk, but the section containing it could not be found Warning, .pdata section size (%ld) is not a multiple of %d The Function Table (interpreted .pdata section contents) vma: Begin End EH EH PrologEnd Exception Address Address Handler Data Address Mask PE File Base Relocations (interpreted .reloc section contents) Virtual Address: %08lx Chunk size %ld (0x%lx) Number of fixups %ld reloc %4d offset %4x [%4lx] %s There is an import table, but the section containing it could not be found Resource Directory [.rsrc] Exception Directory [.pdata] Security Directory Debug Directory Description Directory Special Directory Load Configuration Directory Bound Import Directory Delay Import Directory Reserved HIGHLOW MIPS_JMPADDR SECTION RESERVED1 MIPS_JMPADDR16 DIR64 HIGH3ADJ UNKNOWN .rsrc .arch .tls .xdata Export Flags %lx Time/Date stamp %lx Major/Minor %d/%d Name Ordinal Base %ld Number in: Table Addresses Export Address Table Name Pointer Table Ordinal Table Forwarder RVA Export RVA [%4ld] +base[%4ld] %04lx %s [%4ld] %s Characteristics 0x%x relocations stripped %s line numbers stripped symbols stripped large address aware little endian 32 bit words debugging information removed system file DLL big endian Time/Date %s ImageBase SectionAlignment FileAlignment MajorOSystemVersion %d MinorOSystemVersion %d MajorImageVersion %d MinorImageVersion %d MajorSubsystemVersion %d MinorSubsystemVersion %d Win32Version %08lx SizeOfImage %08lx SizeOfHeaders %08lx CheckSum %08lx EFI runtime driver unspecified NT native Windows GUI Windows CUI POSIX CUI Wince CUI EFI application EFI boot service driver Subsystem %08x (%s) DllCharacteristics %08x SizeOfStackReserve SizeOfStackCommit SizeOfHeapReserve SizeOfHeapCommit LoaderFlags %08lx NumberOfRvaAndSizes %08lx The Data Directory Entry %1x %08lx %08lx DLL Name: %s %04lx %4lu %04lx %4d %s %04lx %x (%4x) .idata$2 __tls_used WV u u u u - u u u u u u @ @BC; @ R @ @_ @ l @ @s @ @ @ B u @ ` u @ u @ @ v l P P P P coff_link_add_symbols _bfd_coff_write_global_sym j a A _bfd_coff_reloc_link_order _bfd_coff_generic_relocate_section _bfd_coff_link_input_bfd u ^ /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/cofflink.c Warning: symbol `%s' is both section and non-section %s: %s: reloc overflow: 0x%lx > 0xffff %s: warning: %s: line number overflow: 0x%lx > 0xffff %B: illegal symbol index %ld in relocs %B: bad reloc address 0x%lx in section `%A' %B: relocs in section `%A', but it has no contents ??_ -attr -heap elf32-little elf32-big } ? / 6 / ` 6 / ` ; K 8 4 B s }V 3 C # t Z a 7T O c w ; B G H R ] 8 7 ^ < [ V v% ; } % 8 + } + k# ' * X " ! w R A t+ + o 9 B )D ) #* Z p ` $ . Ng % } ? / s s K s s K ; K 8 4 B s }V 3 C # t Z a 7T O c w ; B G H R ] 8 7 ^ < [ V v% ; } % 8 + } + k# ' * X " ! w R ~ u %B: Relocations in generic ELF (EM: %d) i386:x86-64 i8086 i386:intel i386:x86-64:intel Ya a @ @ @ Ya a Ya a Ya a @ @ @ A Ya a trad-core .stack p / / / / / / / / / / / / / / / / / / ; ; ; D, . / / ^ ~ ` swap_abort /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/trad-core.c %B(%A+0x%lx): Stabs entry has invalid string index. /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/stabs.c WARNING GSYM FNAME FUN STSYM LCSYM MAIN ROSYM NSYMS NOMAP OBJ OPT M2C DSLINE BSLINE DEFD FLINE EHDECL CATCH SSYM ENDM SO LSYM BINCL SOL PSYM EINCL LBRAC EXCL SCOPE PATCH RBRAC BCOMM ECOMM ECOML WITH NBTEXT NBDATA NBBSS NBSTS NBLCS LENG SETA SETT SETD SETB SETV INDR = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = > = > = = = > = = = > = = = > = '> = .> = 5> = <> = C> = J> = = = Q> = = = X> = = = = = = = = = = = _> = f> = m> = = = = = = = t> = = = = = = = = = = = = = = = = = = = {> = > = > = = = = = = = = = = = = = = = = = = = = = = = = = = = > = > = > = = = = = = = = = = = = = = = = = = = = = = = = = = = > = > = > = = = = = = = = = = = > = = = = = = = = = = = = = = = > = > = > = = = > = > = = = = = > = > = > = > = ? = = = = = ? _bfd_add_merge_section _bfd_merged_section_offset /home/dmitriyz/src-lcl/android2/toolchain/android-toolchain/binutils-2.17/bfd/merge.c %s: access beyond end of merged section (%ld) Demangling disabled auto GNU (g++) style demangling lucid Lucid (lcc) style demangling arm ARM style demangling hp HP (aCC) style demangling edg EDG style demangling gnu-v3 java Java style demangling gnat GNAT style demangling nw new dl delete vn new [] vd delete [] as eq gt plus apl minus ami mult amu aml convert negate trunc_mod % amd %= trunc_div adv truth_andif aa truth_orif oo truth_not postincrement pp postdecrement -- mm bit_ior aor bit_xor ^ aer ^= bit_and aad bit_not ~ co cl alshift arshift component -> rf indirect method_call ->() addr vc compound cm cond ?: cn max >? mx min mn nop ->* sz sizeof const volatile const __restrict const volatile __restrict T%d __ct __dt assign_ operator operator _imp__ _GLOBAL_ __std__ __sti__ __vtbl__ :: virtual table global constructors keyed to global destructors keyed to import stub for _ada_ ___ <%s> -2147483648 __pt__ __tm__ __ps__ __S {anonymous} unsigned __complex void bool wchar_t long double float int%u_t template < > class JArray1Z false true ... static 0123456789Qt __thunk_ __t type_info node type_info function Automatic selection based on executable GNU (g++) V3 ABI-style demangling virtual function thunk (delta:%d) for ! 6 9 S W l @ 8 s x ( z w , M M u u ( ( M u i + i * . : = H K q U L c L f t w t z dW ( ( 6 6 Dv $ ( + O O O O O O O O u s s s s s s t s s s s s s s s (u s Wu u s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s u t Fs Fs Fs Fs Fs Fs Fs Fs ?t Fs Fs Fs Fs Fs ?t Fs Fs Fs Fs Fs Fs `t `t w s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s z z z z z z z z z z s s s s s s s s s s s s s w s w s s s s s s s s s s s s s s s s s s s s s w s s x >y y s x s s { s s y s s s s s y ry s s z z z hw xs u xs xs w v xs xs xs xs xs mv xs mv Ev xs v xs v xs u xs xs xs xs xs xs xs xs xs xs xs xs xs xs xs xs xs xs xs xs xs xs xs xs xs Ev xs xs xs xs u I I I I I I I I I I % e , % O w % boolean byte __float128 unsigned char unsigned int unsigned long unsigned __int128 unsigned short unsigned long long aN aS dV da delete[] eO eo lS mI mL na new[] oR pL pm ps qu rM rS std std::allocator std::basic_string std::string std::istream basic_istream std::ostream basic_ostream std::iostream basic_iostream (anonymous namespace) string literal VTT for construction vtable for -in- typeinfo for typeinfo name for typeinfo fn for non-virtual thunk to covariant return thunk to java Class for guard variable for reference temporary for hidden alias for ::* ) : ( ul restrict const complex imaginary JArray< * * u 1 ( ( ? ? 6 ] L L C C Z Z Q Q l l c c p p z 1 { L r r : > ( + i z w , u ( w t ( b] u q H M $ c L M dW X + ( + t a b s < F i 1 o 1 d . 2 < / : : / / / F F / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / F ! ! ! ! ! ! ! ! ! ! ! ! ' ! Q ! ! ! ! ! ! ! ! ! ! ! ! _ ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! & n Q - | X 5 3 n V U 9 5 C L L L _ J 0 x > t k _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ p p 1 V { _ _ _ _ ( ( H H - < H H H std::basic_string, std::allocator > std::basic_istream > std::basic_ostream > std::basic_iostream > out of memory %I $ < ;G ]t B { = 0 $ ~ `2 fC O m A oE! a 0 P A A ? & * " @ ` 0 P H X ? " A ! ) ? Cannot find prime bigger than %lu cccccccccccccccccccccccccccccccccccccccccccccccc ccccccc cccccccccccccccccccccccccc ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`ABCDEFGHIJKLMNOPQRSTUVWXYZ{|}~ !"#$%&'()*+,-./0123456789:;<=>?@abcdefghijklmnopqrstuvwxyz[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ C B B B B Q 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 %s%sout of memory allocating %lu bytes after a total of %lu bytes undocumented error #%d
` L ' @ - 4 l z U Dv 4 i x ] , a) ) " # * + . + # C; + + # 42 ] 3 3 h h 5 z3 d2 Ng @ p X @ @ 8' 1 1 0 0 / / @/ / . . . - - L % n n t t t o u u .u