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

Side by Side Diff: bfd/ppcboot.c

Issue 11969036: Merge GDB 7.5.1 (Closed) Base URL: http://git.chromium.org/native_client/nacl-gdb.git@master
Patch Set: Created 7 years, 11 months 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
« no previous file with comments | « bfd/po/uk.po ('k') | bfd/ptrace-core.c » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
None
OLDNEW
1 /* BFD back-end for PPCbug boot records. 1 /* BFD back-end for PPCbug boot records.
2 Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2 Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
3 2007, 2008, 2009, 2011 Free Software Foundation, Inc. 3 2007, 2008, 2009, 2011, 2012 Free Software Foundation, Inc.
4 Written by Michael Meissner, Cygnus Support, <meissner@cygnus.com> 4 Written by Michael Meissner, Cygnus Support, <meissner@cygnus.com>
5 5
6 This file is part of BFD, the Binary File Descriptor library. 6 This file is part of BFD, the Binary File Descriptor library.
7 7
8 This program is free software; you can redistribute it and/or modify 8 This program is free software; you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by 9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation; either version 3 of the License, or 10 the Free Software Foundation; either version 3 of the License, or
11 (at your option) any later version. 11 (at your option) any later version.
12 12
13 This program is distributed in the hope that it will be useful, 13 This program is distributed in the hope that it will be useful,
(...skipping 19 matching lines...) Expand all
33 instead to indicate the number of zeroes to skip at the start of 33 instead to indicate the number of zeroes to skip at the start of
34 the file. objcopy cooperates by specially setting the start 34 the file. objcopy cooperates by specially setting the start
35 address to zero by default. */ 35 address to zero by default. */
36 36
37 #include "sysdep.h" 37 #include "sysdep.h"
38 #include "safe-ctype.h" 38 #include "safe-ctype.h"
39 #include "bfd.h" 39 #include "bfd.h"
40 #include "libbfd.h" 40 #include "libbfd.h"
41 41
42 /* PPCbug location structure */ 42 /* PPCbug location structure */
43 typedef struct ppcboot_location { 43 typedef struct ppcboot_location
44 {
44 bfd_byte ind; 45 bfd_byte ind;
45 bfd_byte head; 46 bfd_byte head;
46 bfd_byte sector; 47 bfd_byte sector;
47 bfd_byte cylinder; 48 bfd_byte cylinder;
48 } ppcboot_location_t; 49 } ppcboot_location_t;
49 50
50 /* PPCbug partition table layout */ 51 /* PPCbug partition table layout */
51 typedef struct ppcboot_partition { 52 typedef struct ppcboot_partition
53 {
52 ppcboot_location_t partition_begin; /* partition begin */ 54 ppcboot_location_t partition_begin; /* partition begin */
53 ppcboot_location_t partition_end; /* partition end */ 55 ppcboot_location_t partition_end; /* partition end */
54 bfd_byte sector_begin[4]; /* 32-bit start RBA (zero-based) , little endian */ 56 bfd_byte sector_begin[4]; /* 32-bit start RBA (zero-based) , little endian */
55 bfd_byte sector_length[4]; /* 32-bit RBA count (one-based), little endian */ 57 bfd_byte sector_length[4]; /* 32-bit RBA count (one-based), little endian */
56 } ppcboot_partition_t; 58 } ppcboot_partition_t;
57 59
58 /* PPCbug boot layout. */ 60 /* PPCbug boot layout. */
59 typedef struct ppcboot_hdr { 61 typedef struct ppcboot_hdr
62 {
60 bfd_byte pc_compatibility[446]; /* x86 instruction field */ 63 bfd_byte pc_compatibility[446]; /* x86 instruction field */
61 ppcboot_partition_t partition[4]; /* partition information */ 64 ppcboot_partition_t partition[4]; /* partition information */
62 bfd_byte signature[2]; /* 0x55 and 0xaa */ 65 bfd_byte signature[2]; /* 0x55 and 0xaa */
63 bfd_byte entry_offset[4]; /* entry point offset, little en dian */ 66 bfd_byte entry_offset[4]; /* entry point offset, little en dian */
64 bfd_byte length[4]; /* load image length, little end ian */ 67 bfd_byte length[4]; /* load image length, little end ian */
65 bfd_byte flags; /* flag field */ 68 bfd_byte flags; /* flag field */
66 bfd_byte os_id; /* OS_ID */ 69 bfd_byte os_id; /* OS_ID */
67 char partition_name[32]; /* partition name */ 70 char partition_name[32]; /* partition name */
68 bfd_byte reserved1[470]; /* reserved */ 71 bfd_byte reserved1[470]; /* reserved */
69 } 72 }
70 #ifdef __GNUC__ 73 #ifdef __GNUC__
71 __attribute__ ((packed)) 74 __attribute__ ((packed))
72 #endif 75 #endif
73 ppcboot_hdr_t; 76 ppcboot_hdr_t;
74 77
75 /* Signature bytes for last 2 bytes of the 512 byte record */ 78 /* Signature bytes for last 2 bytes of the 512 byte record */
76 #define SIGNATURE0 0x55 79 #define SIGNATURE0 0x55
77 #define SIGNATURE1 0xaa 80 #define SIGNATURE1 0xaa
78 81
79 /* PowerPC boot type */ 82 /* PowerPC boot type */
80 #define PPC_IND 0x41 83 #define PPC_IND 0x41
81 84
82 /* Information needed for ppcboot header */ 85 /* Information needed for ppcboot header */
83 typedef struct ppcboot_data { 86 typedef struct ppcboot_data
87 {
84 ppcboot_hdr_t header; /* raw header */ 88 ppcboot_hdr_t header; /* raw header */
85 asection *sec; /* single section */ 89 asection *sec; /* single section */
86 } ppcboot_data_t; 90 } ppcboot_data_t;
87 91
88 /* Any bfd we create by reading a ppcboot file has three symbols: 92 /* Any bfd we create by reading a ppcboot file has three symbols:

error: old chunk mismatch

OLDNEW
« no previous file with comments | « bfd/po/uk.po ('k') | bfd/ptrace-core.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698