URL: https://refspecs.linuxfoundation.org/elf/x86_64-abi-0.99.pdf
%PDF-1.4
%����
1 0 obj
<< /S /GoTo /D (chapter.1) >>
endobj
4 0 obj
(Introduction)
endobj
5 0 obj
<< /S /GoTo /D (chapter.2) >>
endobj
8 0 obj
(Software Installation)
endobj
9 0 obj
<< /S /GoTo /D (chapter.3) >>
endobj
12 0 obj
(Low Level System Information)
endobj
13 0 obj
<< /S /GoTo /D (section.3.1) >>
endobj
16 0 obj
(Machine Interface)
endobj
17 0 obj
<< /S /GoTo /D (subsection.3.1.1) >>
endobj
20 0 obj
(Processor Architecture)
endobj
21 0 obj
<< /S /GoTo /D (subsection.3.1.2) >>
endobj
24 0 obj
(Data Representation)
endobj
25 0 obj
<< /S /GoTo /D (section.3.2) >>
endobj
28 0 obj
(Function Calling Sequence)
endobj
29 0 obj
<< /S /GoTo /D (subsection.3.2.1) >>
endobj
32 0 obj
(Registers and the Stack Frame)
endobj
33 0 obj
<< /S /GoTo /D (subsection.3.2.2) >>
endobj
36 0 obj
(The Stack Frame)
endobj
37 0 obj
<< /S /GoTo /D (subsection.3.2.3) >>
endobj
40 0 obj
(Parameter Passing)
endobj
41 0 obj
<< /S /GoTo /D (section.3.3) >>
endobj
44 0 obj
(Operating System Interface)
endobj
45 0 obj
<< /S /GoTo /D (subsection.3.3.1) >>
endobj
48 0 obj
(Exception Interface)
endobj
49 0 obj
<< /S /GoTo /D (subsection.3.3.2) >>
endobj
52 0 obj
(Virtual Address Space)
endobj
53 0 obj
<< /S /GoTo /D (subsection.3.3.3) >>
endobj
56 0 obj
(Page Size)
endobj
57 0 obj
<< /S /GoTo /D (subsection.3.3.4) >>
endobj
60 0 obj
(Virtual Address Assignments)
endobj
61 0 obj
<< /S /GoTo /D (section.3.4) >>
endobj
64 0 obj
(Process Initialization)
endobj
65 0 obj
<< /S /GoTo /D (subsection.3.4.1) >>
endobj
68 0 obj
(Initial Stack and Register State)
endobj
69 0 obj
<< /S /GoTo /D (subsection.3.4.2) >>
endobj
72 0 obj
(Thread State)
endobj
73 0 obj
<< /S /GoTo /D (subsection.3.4.3) >>
endobj
76 0 obj
(Auxiliary Vector)
endobj
77 0 obj
<< /S /GoTo /D (section.3.5) >>
endobj
80 0 obj
(Coding Examples)
endobj
81 0 obj
<< /S /GoTo /D (subsection.3.5.1) >>
endobj
84 0 obj
(Architectural Constraints)
endobj
85 0 obj
<< /S /GoTo /D (subsection.3.5.2) >>
endobj
88 0 obj
(Conventions)
endobj
89 0 obj
<< /S /GoTo /D (subsection.3.5.3) >>
endobj
92 0 obj
(Position-Independent Function Prologue)
endobj
93 0 obj
<< /S /GoTo /D (subsection.3.5.4) >>
endobj
96 0 obj
(Data Objects)
endobj
97 0 obj
<< /S /GoTo /D (subsection.3.5.5) >>
endobj
100 0 obj
(Function Calls)
endobj
101 0 obj
<< /S /GoTo /D (subsection.3.5.6) >>
endobj
104 0 obj
(Branching)
endobj
105 0 obj
<< /S /GoTo /D (subsection.3.5.7) >>
endobj
108 0 obj
(Variable Argument Lists)
endobj
109 0 obj
<< /S /GoTo /D (section.3.6) >>
endobj
112 0 obj
(DWARF Definition)
endobj
113 0 obj
<< /S /GoTo /D (subsection.3.6.1) >>
endobj
116 0 obj
(DWARF Release Number)
endobj
117 0 obj
<< /S /GoTo /D (subsection.3.6.2) >>
endobj
120 0 obj
(DWARF Register Number Mapping)
endobj
121 0 obj
<< /S /GoTo /D (section.3.7) >>
endobj
124 0 obj
(Stack Unwind Algorithm)
endobj
125 0 obj
<< /S /GoTo /D (chapter.4) >>
endobj
128 0 obj
(Object Files)
endobj
129 0 obj
<< /S /GoTo /D (section.4.1) >>
endobj
132 0 obj
(ELF Header)
endobj
133 0 obj
<< /S /GoTo /D (subsection.4.1.1) >>
endobj
136 0 obj
(Machine Information)
endobj
137 0 obj
<< /S /GoTo /D (subsection.4.1.2) >>
endobj
140 0 obj
(Number of Program Headers)
endobj
141 0 obj
<< /S /GoTo /D (section.4.2) >>
endobj
144 0 obj
(Sections)
endobj
145 0 obj
<< /S /GoTo /D (subsection.4.2.1) >>
endobj
148 0 obj
(Section Flags)
endobj
149 0 obj
<< /S /GoTo /D (subsection.4.2.2) >>
endobj
152 0 obj
(Section types)
endobj
153 0 obj
<< /S /GoTo /D (subsection.4.2.3) >>
endobj
156 0 obj
(Special Sections)
endobj
157 0 obj
<< /S /GoTo /D (subsection.4.2.4) >>
endobj
160 0 obj
(EH\137FRAME sections)
endobj
161 0 obj
<< /S /GoTo /D (section.4.3) >>
endobj
164 0 obj
(Symbol Table)
endobj
165 0 obj
<< /S /GoTo /D (section.4.4) >>
endobj
168 0 obj
(Relocation)
endobj
169 0 obj
<< /S /GoTo /D (subsection.4.4.1) >>
endobj
172 0 obj
(Relocation Types)
endobj
173 0 obj
<< /S /GoTo /D (subsection.4.4.2) >>
endobj
176 0 obj
(Large Models)
endobj
177 0 obj
<< /S /GoTo /D (chapter.5) >>
endobj
180 0 obj
(Program Loading and Dynamic Linking)
endobj
181 0 obj
<< /S /GoTo /D (section.5.1) >>
endobj
184 0 obj
(Program Loading)
endobj
185 0 obj
<< /S /GoTo /D (subsection.5.1.1) >>
endobj
188 0 obj
(Program header)
endobj
189 0 obj
<< /S /GoTo /D (section.5.2) >>
endobj
192 0 obj
(Dynamic Linking)
endobj
193 0 obj
<< /S /GoTo /D (subsection.5.2.1) >>
endobj
196 0 obj
(Program Interpreter)
endobj
197 0 obj
<< /S /GoTo /D (subsection.5.2.2) >>
endobj
200 0 obj
(Initialization and Termination Functions)
endobj
201 0 obj
<< /S /GoTo /D (chapter.6) >>
endobj
204 0 obj
(Libraries)
endobj
205 0 obj
<< /S /GoTo /D (section.6.1) >>
endobj
208 0 obj
(C Library)
endobj
209 0 obj
<< /S /GoTo /D (subsection.6.1.1) >>
endobj
212 0 obj
(Global Data Symbols)
endobj
213 0 obj
<< /S /GoTo /D (subsection.6.1.2) >>
endobj
216 0 obj
(Floating Point Environment Functions)
endobj
217 0 obj
<< /S /GoTo /D (section.6.2) >>
endobj
220 0 obj
(Unwind Library Interface)
endobj
221 0 obj
<< /S /GoTo /D (subsection.6.2.1) >>
endobj
224 0 obj
(Exception Handler Framework)
endobj
225 0 obj
<< /S /GoTo /D (subsection.6.2.2) >>
endobj
228 0 obj
(Data Structures)
endobj
229 0 obj
<< /S /GoTo /D (subsection.6.2.3) >>
endobj
232 0 obj
(Throwing an Exception)
endobj
233 0 obj
<< /S /GoTo /D (subsection.6.2.4) >>
endobj
236 0 obj
(Exception Object Management)
endobj
237 0 obj
<< /S /GoTo /D (subsection.6.2.5) >>
endobj
240 0 obj
(Context Management)
endobj
241 0 obj
<< /S /GoTo /D (subsection.6.2.6) >>
endobj
244 0 obj
(Personality Routine)
endobj
245 0 obj
<< /S /GoTo /D (section.6.3) >>
endobj
248 0 obj
(Unwinding Through Assembler Code)
endobj
249 0 obj
<< /S /GoTo /D (chapter.7) >>
endobj
252 0 obj
(Development Environment)
endobj
253 0 obj
<< /S /GoTo /D (chapter.8) >>
endobj
256 0 obj
(Execution Environment)
endobj
257 0 obj
<< /S /GoTo /D (chapter.9) >>
endobj
260 0 obj
(Conventions)
endobj
261 0 obj
<< /S /GoTo /D (section.9.1) >>
endobj
264 0 obj
(C++)
endobj
265 0 obj
<< /S /GoTo /D (section.9.2) >>
endobj
268 0 obj
(Fortran)
endobj
269 0 obj
<< /S /GoTo /D (subsection.9.2.1) >>
endobj
272 0 obj
(Names)
endobj
273 0 obj
<< /S /GoTo /D (subsection.9.2.2) >>
endobj
276 0 obj
(Representation of Fortran Types)
endobj
277 0 obj
<< /S /GoTo /D (subsection.9.2.3) >>
endobj
280 0 obj
(Argument Passing)
endobj
281 0 obj
<< /S /GoTo /D (subsection.9.2.4) >>
endobj
284 0 obj
(Functions)
endobj
285 0 obj
<< /S /GoTo /D (subsection.9.2.5) >>
endobj
288 0 obj
(COMMON blocks)
endobj
289 0 obj
<< /S /GoTo /D (subsection.9.2.6) >>
endobj
292 0 obj
(Intrinsics)
endobj
293 0 obj
<< /S /GoTo /D (appendix.A) >>
endobj
296 0 obj
(Linux Conventions)
endobj
297 0 obj
<< /S /GoTo /D (section.A.1) >>
endobj
300 0 obj
(Execution of 32-bit Programs)
endobj
301 0 obj
<< /S /GoTo /D (section.A.2) >>
endobj
304 0 obj
(AMD64 Linux Kernel Conventions)
endobj
305 0 obj
<< /S /GoTo /D (subsection.A.2.1) >>
endobj
308 0 obj
(Calling Conventions)
endobj
309 0 obj
<< /S /GoTo /D (subsection.A.2.2) >>
endobj
312 0 obj
(Stack Layout)
endobj
313 0 obj
<< /S /GoTo /D (subsection.A.2.3) >>
endobj
316 0 obj
(Required Processor Features)
endobj
317 0 obj
<< /S /GoTo /D (subsection.A.2.4) >>
endobj
320 0 obj
(Miscellaneous Remarks)
endobj
321 0 obj
<< /S /GoTo /D [322 0 R /Fit ] >>
endobj
324 0 obj <<
/Length 527
/Filter /FlateDecode
>>
stream
x^�T�n�0��+x��z��=�FR4��KӃBѵ�J:8__ZT�V���5��}�����g����d�"(8ʈ��"˂|��u�w� �4�����ӶtySV��1+�y8��v���#�r��?��N50��(b�*A&��I�ŵ=wp��i�O;_C�|]W!}Q����9��@h�X��u�W͋cD�|�O^)��ԫ1\(v4&H��DrжwvSD3E:�p�'(%0�b��r���ҭs�M�E�<�l̗�.s
T[OӾ�8�C�� ��>$�yާ�}(;+���S@!��2�\R0���?��La���b�cj�/����~�2��À��2�\��!k4���æ��ƭ�v;$BA�߲C"q�h�d�-0� :o���^�Q|�F춦�?^#�M4P_43�Tĺ�i�`�M�]����=~��?aA(sѐ���=���^���W��ѭ�(��e�+W����||>���U�n|��m�q4ח���6gW���]|�X���?P�?a�{t��7�8�
endstream
endobj
322 0 obj <<
/Type /Page
/Contents 324 0 R
/Resources 323 0 R
/MediaBox [0 0 612 792]
/Parent 328 0 R
>> endobj
325 0 obj <<
/D [322 0 R /XYZ 109.854 704.063 null]
>> endobj
326 0 obj <<
/D [322 0 R /XYZ 110.854 666.202 null]
>> endobj
323 0 obj <<
/Font << /F36 327 0 R >>
/ProcSet [ /PDF /Text ]
>> endobj
358 0 obj <<
/Length 929
/Filter /FlateDecode
>>
stream
x^]o�0���+r�HK��$��_R�V�
�Ͷ� s����ώM%�Nj��D(�x��������9�=D�8��7{�(�ģ1�(��`�}�O�\�\����e��(������U��_�J0��b��"BDA����a!�!ר_���ډ���T|:�H �Ӷ.��� �l�+@��6�������Tb��| �r���,�Ї�rb��q�b셐D�07hT�ꮮ��>��I+!�fT>���QR=�w�մK�8"i��^�#��gYEY����^%�j!5>��k��M� ��)W�2܊��Nz� �]c�-4aµ��K$���|����h)e��)A�Z�|X�P�5侃E$;���w[�|�ia�Ҳ�|dԽ�d_��O�x.��Pw��uB�e#�P�{�Se�� ��nc�K�0;�
��#�f�*�*S�9Ҿ�%c-"�����\Hm���J�z)8 ir"�Ci�V���P�Wv�Q�P�`�M8��#q-���?�j��)�7i�wfҟWx <�6��F��m�4��I?�4���C0y����L�Yu�
Q�_
6 � qF��QKue*���ɝ@���Q/���0R�cܨ{u�n���-���{:�4q6,�4��|�6�j�n#L�%FjO�-�i��y@}W҇|s�O��v�Cn���S�I1�k��#�ͧBK�2�5��
�"������T�g�a���ǖ�g'���g`����>�S�<}'%�2n�!�UU/�̐��H̅�ɕ�'�]�t������kl��m�@Z��������N�!�B!۶�nަ
c�k����#[��9�c�s�K; �����i7%{%�1]~�\~�K��!f>�P�DH!�^���wr<�������@��f���W����b�*#��"���[0�d��
���jO
endstream
endobj
357 0 obj <<
/Type /Page
/Contents 358 0 R
/Resources 356 0 R
/MediaBox [0 0 612 792]
/Parent 328 0 R
/Annots [ 329 0 R 330 0 R 331 0 R 332 0 R 333 0 R 334 0 R 335 0 R 336 0 R 337 0 R 338 0 R 339 0 R 340 0 R 341 0 R 342 0 R 343 0 R 344 0 R 345 0 R 346 0 R 347 0 R 348 0 R 349 0 R 350 0 R 351 0 R 352 0 R 353 0 R 354 0 R ]
>> endobj
329 0 obj <<
/Type /Annot
/Subtype /Link
/Border[0 0 1]/H/I/C[1 0 0]
/Rect [109.858 507.154 194.663 517.527]
/A << /S /GoTo /D (chapter.1) >>
>> endobj
330 0 obj <<
/Type /Annot
/Subtype /Link
/Border[0 0 1]/H/I/C[1 0 0]
/Rect [109.858 480.753 236.829 491.126]
/A << /S /GoTo /D (chapter.2) >>
>> endobj
331 0 obj <<
/Type /Annot
/Subtype /Link
/Border[0 0 1]/H/I/C[1 0 0]
/Rect [109.858 452.069 287.459 464.725]
/A << /S /GoTo /D (chapter.3) >>
>> endobj
332 0 obj <<
/Type /Annot
/Subtype /Link
/Border[0 0 1]/H/I/C[1 0 0]
/Rect [127.791 439.93 244.456 450.148]
/A << /S /GoTo /D (section.3.1) >>
>> endobj
333 0 obj <<
/Type /Annot
/Subtype /Link
/Border[0 0 1]/H/I/C[1 0 0]
/Rect [155.288 425.485 304.758 435.702]
/A << /S /GoTo /D (subsection.3.1.1) >>
>> endobj
334 0 obj <<
/Type /Annot
/Subtype /Link
/Border[0 0 1]/H/I/C[1 0 0]
/Rect [155.288 408.57 292.815 421.256]
/A << /S /GoTo /D (subsection.3.1.2) >>
>> endobj
335 0 obj <<
/Type /Annot
/Subtype /Link
/Border[0 0 1]/H/I/C[1 0 0]
/Rect [127.791 394.124 286.789 406.81]
/A << /S /GoTo /D (section.3.2) >>
>> endobj
336 0 obj <<
/Type /Annot
/Subtype /Link
/Border[0 0 1]/H/I/C[1 0 0]
/Rect [155.288 379.678 340.79 392.365]
/A << /S /GoTo /D (subsection.3.2.1) >>
>> endobj
337 0 obj <<
/Type /Annot
/Subtype /Link
/Border[0 0 1]/H/I/C[1 0 0]
/Rect [155.288 367.701 277.214 377.919]
/A << /S /GoTo /D (subsection.3.2.2) >>
>> endobj
338 0 obj <<
/Type /Annot
/Subtype /Link
/Border[0 0 1]/H/I/C[1 0 0]
/Rect [155.288 350.787 283.167 363.473]
/A << /S /GoTo /D (subsection.3.2.3) >>
>> endobj
339 0 obj <<
/Type /Annot
/Subtype /Link
/Border[0 0 1]/H/I/C[1 0 0]
/Rect [127.791 336.341 288.63 349.027]
/A << /S /GoTo /D (section.3.3) >>
>> endobj
340 0 obj <<
/Type /Annot
/Subtype /Link
/Border[0 0 1]/H/I/C[1 0 0]
/Rect [155.288 321.895 289.36 334.581]
/A << /S /GoTo /D (subsection.3.3.1) >>
>> endobj
341 0 obj <<
/Type /Annot
/Subtype /Link
/Border[0 0 1]/H/I/C[1 0 0]
/Rect [155.288 307.449 302.391 320.135]
/A << /S /GoTo /D (subsection.3.3.2) >>
>> endobj
342 0 obj <<
/Type /Annot
/Subtype /Link
/Border[0 0 1]/H/I/C[1 0 0]
/Rect [155.288 293.003 242.173 305.69]
/A << /S /GoTo /D (subsection.3.3.3) >>
>> endobj
343 0 obj <<
/Type /Annot
/Subtype /Link
/Border[0 0 1]/H/I/C[1 0 0]
/Rect [155.288 278.558 335.614 291.244]
/A << /S /GoTo /D (subsection.3.3.4) >>
>> endobj
344 0 obj <<
/Type /Annot
/Subtype /Link
/Border[0 0 1]/H/I/C[1 0 0]
/Rect [127.791 266.58 257.893 276.798]
/A << /S /GoTo /D (section.3.4) >>
>> endobj
345 0 obj <<
/Type /Annot
/Subtype /Link
/Border[0 0 1]/H/I/C[1 0 0]
/Rect [155.288 249.666 343.456 262.352]
/A << /S /GoTo /D (subsection.3.4.1) >>
>> endobj
346 0 obj <<
/Type /Annot
/Subtype /Link
/Border[0 0 1]/H/I/C[1 0 0]
/Rect [155.288 237.545 256.292 247.906]
/A << /S /GoTo /D (subsection.3.4.2) >>
>> endobj
347 0 obj <<
/Type /Annot
/Subtype /Link
/Border[0 0 1]/H/I/C[1 0 0]
/Rect [155.288 220.774 275.552 233.46]
/A << /S /GoTo /D (subsection.3.4.3) >>
>> endobj
348 0 obj <<
/Type /Annot
/Subtype /Link
/Border[0 0 1]/H/I/C[1 0 0]
/Rect [127.791 206.328 242.627 219.015]
/A << /S /GoTo /D (section.3.5) >>
>> endobj
349 0 obj <<
/Type /Annot
/Subtype /Link
/Border[0 0 1]/H/I/C[1 0 0]
/Rect [155.288 194.351 316.067 204.569]
/A << /S /GoTo /D (subsection.3.5.1) >>
>> endobj
350 0 obj <<
/Type /Annot
/Subtype /Link
/Border[0 0 1]/H/I/C[1 0 0]
/Rect [155.288 179.905 255.324 190.123]
/A << /S /GoTo /D (subsection.3.5.2) >>
>> endobj
351 0 obj <<
/Type /Annot
/Subtype /Link
/Border[0 0 1]/H/I/C[1 0 0]
/Rect [155.288 162.991 389.472 175.677]
/A << /S /GoTo /D (subsection.3.5.3) >>
>> endobj
352 0 obj <<
/Type /Annot
/Subtype /Link
/Border[0 0 1]/H/I/C[1 0 0]
/Rect [155.288 148.545 257.619 161.231]
/A << /S /GoTo /D (subsection.3.5.4) >>
>> endobj
353 0 obj <<
/Type /Annot
/Subtype /Link
/Border[0 0 1]/H/I/C[1 0 0]
/Rect [155.288 136.568 265.617 146.785]
/A << /S /GoTo /D (subsection.3.5.5) >>
>> endobj
354 0 obj <<
/Type /Annot
/Subtype /Link
/Border[0 0 1]/H/I/C[1 0 0]
/Rect [155.288 119.653 245.342 132.34]
/A << /S /GoTo /D (subsection.3.5.6) >>
>> endobj
360 0 obj <<
/D [357 0 R /XYZ 110.854 534.398 null]
>> endobj
356 0 obj <<
/Font << /F47 359 0 R /F36 327 0 R >>
/ProcSet [ /PDF /Text ]
>> endobj
398 0 obj <<
/Length 1153
/Filter /FlateDecode
>>
stream
x^ՙMs�F�����H���rc�����&�l*5����D ��ί�|I���\)X�Sci���y���~z�n�h?"��� ԇ!�Q�}�Yo���� �����w��"�4v=H�_� tV�u���7�d[n]����]���.`@ ,�ܿ�{d>�X��ǘVXT~K�;pQ���
@�7���K�,)�<�(�m�.�N�b?����&��8�������z��m�s�BKp�_�pqV���6��<�M���BgH�����c��>�|��]��}K���V�*/��~-��ֻ��0ߍ�^XR��G z��hjl�m�O<7j1J�X��!�����ɒy�@�*Xp86����Bf� ���[1:���N&u�<���$3��&[�Śk���-�ÌM�����N͗�����k;٢p0l]��h��XA��-�\$@8I(h{��4*48zԈ`�j�a�}�W20g�s��la]�O�ǍT6��*�M��"�7�<�F�WxX�2M\dυ
�����]2�`�L=����h4|IuP�:��Yn�3u��ѽ:�o_�tXs�b�/��|nN>D�Z�����/.�D]
Z���ڀ�9��v�����;�|��@��t��(J�;gL|��q&�[m�A�/�-F������1��d^]dz�Y��[[l���n��t^���u���#�rL��� ���^���B� _�|��Cm.�ٳ���G��{��q�)b5&@��&E$V�y#�U