Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(87)

Side by Side Diff: tools/elf.py

Issue 4181005: Fixes some bugs with memory setup and halt-sled allocation and... (Closed) Base URL: svn://svn.chromium.org/native_client/trunk/src/native_client/
Patch Set: '' Created 10 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « tools/command_tester.py ('k') | tools/elf_patcher.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/python 1 #!/usr/bin/python
2 2
3 # Copyright 2010 The Native Client Authors. All rights reserved.
4 # Use of this source code is governed by a BSD-style license that can
5 # be found in the LICENSE file.
6
7
3 """ 8 """
4 This module contains utilities and constants needed to parse ELF headers. 9 This module contains utilities and constants needed to parse ELF headers.
5 """ 10 """
6 11
7 import exceptions 12 import exceptions
8 import struct 13 import struct
9 14
10 # maps yielding actual sizes of various abstract types 15 # maps yielding actual sizes of various abstract types
11 16
12 e32_size = { 17 e32_size = {
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
51 ('ehsize', 'Half'), 56 ('ehsize', 'Half'),
52 ('phentsize', 'Half'), 57 ('phentsize', 'Half'),
53 ('phnum', 'Half'), 58 ('phnum', 'Half'),
54 ('shentsize', 'Half'), 59 ('shentsize', 'Half'),
55 ('shnum', 'Half'), 60 ('shnum', 'Half'),
56 ('shstndx', 'Half'), 61 ('shstndx', 'Half'),
57 ] 62 ]
58 63
59 ehdr_member_type = dict(ehdr_member_and_type) 64 ehdr_member_type = dict(ehdr_member_and_type)
60 65
66 def MemberPositionMap(member_and_type):
67 return dict((m,i) for i,(m,t) in enumerate(member_and_type))
68
61 elf32_phdr_member_and_type = [ 69 elf32_phdr_member_and_type = [
62 ('type', 'Word'), 70 ('type', 'Word'),
63 ('offset', 'Off'), 71 ('offset', 'Off'),
64 ('vaddr', 'Addr'), 72 ('vaddr', 'Addr'),
65 ('paddr', 'Addr'), 73 ('paddr', 'Addr'),
66 ('filesz', 'Word'), 74 ('filesz', 'Word'),
67 ('memsz', 'Word'), 75 ('memsz', 'Word'),
68 ('flags', 'Word'), 76 ('flags', 'Word'),
69 ('align', 'Word'), 77 ('align', 'Word'),
70 ] 78 ]
(...skipping 306 matching lines...) Expand 10 before | Expand all | Expand 10 after
377 print ehdr_machine_name; 385 print ehdr_machine_name;
378 print ehdr_version; 386 print ehdr_version;
379 print ehdr_version_name; 387 print ehdr_version_name;
380 print ehdr_ident; 388 print ehdr_ident;
381 print ehdr_ident_class; 389 print ehdr_ident_class;
382 print ehdr_ident_data; 390 print ehdr_ident_data;
383 print phdr_type; 391 print phdr_type;
384 print phdr_type_name; 392 print phdr_type_name;
385 print phdr_flags; 393 print phdr_flags;
386 print shdr_flags; 394 print shdr_flags;
OLDNEW
« no previous file with comments | « tools/command_tester.py ('k') | tools/elf_patcher.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698