OLD | NEW |
1 /* BFD back-end for Texas Instruments TMS320C80 Multimedia Video Processor (MVP)
. | 1 /* BFD back-end for Texas Instruments TMS320C80 Multimedia Video Processor (MVP)
. |
2 Copyright 1996, 1997, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008 | 2 Copyright 1996, 1997, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008, |
3 Free Software Foundation, Inc. | 3 2012 Free Software Foundation, Inc. |
4 | 4 |
5 Written by Fred Fish (fnf@cygnus.com) | 5 Written by Fred Fish (fnf@cygnus.com) |
6 | 6 |
7 There is nothing new under the sun. This file draws a lot on other | 7 There is nothing new under the sun. This file draws a lot on other |
8 coff files. | 8 coff files. |
9 | 9 |
10 This file is part of BFD, the Binary File Descriptor library. | 10 This file is part of BFD, the Binary File Descriptor library. |
11 | 11 |
12 This program is free software; you can redistribute it and/or modify | 12 This program is free software; you can redistribute it and/or modify |
13 it under the terms of the GNU General Public License as published by | 13 it under the terms of the GNU General Public License as published by |
(...skipping 26 matching lines...) Expand all Loading... |
40 #include "coff/internal.h" | 40 #include "coff/internal.h" |
41 #include "libcoff.h" | 41 #include "libcoff.h" |
42 | 42 |
43 #define COFF_DEFAULT_SECTION_ALIGNMENT_POWER (2) | 43 #define COFF_DEFAULT_SECTION_ALIGNMENT_POWER (2) |
44 #define COFF_ALIGN_IN_SECTION_HEADER 1 | 44 #define COFF_ALIGN_IN_SECTION_HEADER 1 |
45 #define COFF_ALIGN_IN_SFLAGS 1 | 45 #define COFF_ALIGN_IN_SFLAGS 1 |
46 | 46 |
47 #define GET_SCNHDR_FLAGS H_GET_16 | 47 #define GET_SCNHDR_FLAGS H_GET_16 |
48 #define PUT_SCNHDR_FLAGS H_PUT_16 | 48 #define PUT_SCNHDR_FLAGS H_PUT_16 |
49 | 49 |
50 static void rtype2howto | |
51 PARAMS ((arelent *cache_ptr, struct internal_reloc *dst)); | |
52 static bfd_reloc_status_type ppbase_reloc | 50 static bfd_reloc_status_type ppbase_reloc |
53 PARAMS ((bfd *, arelent *, asymbol *, PTR, asection *, bfd *, char **)); | 51 (bfd *, arelent *, asymbol *, void *, asection *, bfd *, char **); |
54 static bfd_reloc_status_type glob15_reloc | 52 static bfd_reloc_status_type glob15_reloc |
55 PARAMS ((bfd *, arelent *, asymbol *, PTR, asection *, bfd *, char **)); | 53 (bfd *, arelent *, asymbol *, void *, asection *, bfd *, char **); |
56 static bfd_reloc_status_type glob16_reloc | 54 static bfd_reloc_status_type glob16_reloc |
57 PARAMS ((bfd *, arelent *, asymbol *, PTR, asection *, bfd *, char **)); | 55 (bfd *, arelent *, asymbol *, void *, asection *, bfd *, char **); |
58 static bfd_reloc_status_type local16_reloc | 56 static bfd_reloc_status_type local16_reloc |
59 PARAMS ((bfd *, arelent *, asymbol *, PTR, asection *, bfd *, char **)); | 57 (bfd *, arelent *, asymbol *, void *, asection *, bfd *, char **); |
60 static bfd_boolean coff_tic80_relocate_section | 58 |
61 PARAMS ((bfd *, struct bfd_link_info *, bfd *, asection *, bfd_byte *, | |
62 » struct internal_reloc *, struct internal_syment *, asection **)); | |
63 static reloc_howto_type * coff_tic80_rtype_to_howto | |
64 PARAMS ((bfd *, asection *, struct internal_reloc *, | |
65 » struct coff_link_hash_entry *, struct internal_syment *, | |
66 » bfd_vma *)); | |
67 | 59 |
68 static reloc_howto_type tic80_howto_table[] = | 60 static reloc_howto_type tic80_howto_table[] = |
69 { | 61 { |
70 | 62 |
71 HOWTO (R_RELLONG, /* type */ | 63 HOWTO (R_RELLONG, /* type */ |
72 0, /* rightshift */ | 64 0, /* rightshift */ |
73 2, /* size (0 = byte, 1 = short, 2 = long)
*/ | 65 2, /* size (0 = byte, 1 = short, 2 = long)
*/ |
74 32, /* bitsize */ | 66 32, /* bitsize */ |
75 FALSE, /* pc_relative */ | 67 FALSE, /* pc_relative */ |
76 0, /* bitpos */ | 68 0, /* bitpos */ |
(...skipping 283 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
360 TRUE, /* partial_inplace */ | 352 TRUE, /* partial_inplace */ |
361 0xffff, /* src_mask */ | 353 0xffff, /* src_mask */ |
362 0xffff, /* dst_mask */ | 354 0xffff, /* dst_mask */ |
363 FALSE) /* pcrel_offset */ | 355 FALSE) /* pcrel_offset */ |
364 }; | 356 }; |
365 | 357 |
366 | 358 |
367 /* Special relocation functions, used when the output file is not | 359 /* Special relocation functions, used when the output file is not |
368 itself a COFF TIc80 file. */ | 360 itself a COFF TIc80 file. */ |
369 | 361 |
error: old chunk mismatch |
None
OLD | NEW |