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

Side by Side Diff: binutils/bfd/elf32-arm.c

Issue 3018030: [binutils] Bump binutils to 2.20.1 (Closed) Base URL: ssh://git@gitrw.chromium.org:9222/nacl-toolchain.git
Patch Set: Created 10 years, 4 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 | Annotate | Revision Log
« no previous file with comments | « binutils/bfd/dwarf2.c ('k') | binutils/bfd/elf32-cris.c » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 32-bit ELF support for ARM 1 /* 32-bit ELF support for ARM
2 Copyright 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2 Copyright 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
3 2008, 2009 Free Software Foundation, Inc. 3 2008, 2009, 2010 Free Software Foundation, Inc.
4 4
5 This file is part of BFD, the Binary File Descriptor library. 5 This file is part of BFD, the Binary File Descriptor library.
6 6
7 This program is free software; you can redistribute it and/or modify 7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by 8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 3 of the License, or 9 the Free Software Foundation; either version 3 of the License, or
10 (at your option) any later version. 10 (at your option) any later version.
11 11
12 This program is distributed in the hope that it will be useful, 12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of 13 but WITHOUT ANY WARRANTY; without even the implied warranty of
(...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after
217 bfd_elf_generic_reloc, /* special_function */ 217 bfd_elf_generic_reloc, /* special_function */
218 "R_ARM_SBREL32", /* name */ 218 "R_ARM_SBREL32", /* name */
219 FALSE, /* partial_inplace */ 219 FALSE, /* partial_inplace */
220 0xffffffff, /* src_mask */ 220 0xffffffff, /* src_mask */
221 0xffffffff, /* dst_mask */ 221 0xffffffff, /* dst_mask */
222 FALSE), /* pcrel_offset */ 222 FALSE), /* pcrel_offset */
223 223
224 HOWTO (R_ARM_THM_CALL, /* type */ 224 HOWTO (R_ARM_THM_CALL, /* type */
225 1, /* rightshift */ 225 1, /* rightshift */
226 2, /* size (0 = byte, 1 = short, 2 = long) */ 226 2, /* size (0 = byte, 1 = short, 2 = long) */
227 » 25,» » » /* bitsize */ 227 » 24,» » » /* bitsize */
228 TRUE, /* pc_relative */ 228 TRUE, /* pc_relative */
229 0, /* bitpos */ 229 0, /* bitpos */
230 complain_overflow_signed,/* complain_on_overflow */ 230 complain_overflow_signed,/* complain_on_overflow */
231 bfd_elf_generic_reloc, /* special_function */ 231 bfd_elf_generic_reloc, /* special_function */
232 "R_ARM_THM_CALL", /* name */ 232 "R_ARM_THM_CALL", /* name */
233 FALSE, /* partial_inplace */ 233 FALSE, /* partial_inplace */
234 0x07ff07ff, /* src_mask */ 234 0x07ff07ff, /* src_mask */
235 0x07ff07ff, /* dst_mask */ 235 0x07ff07ff, /* dst_mask */
236 TRUE), /* pcrel_offset */ 236 TRUE), /* pcrel_offset */
237 237
(...skipping 7288 matching lines...) Expand 10 before | Expand all | Expand 10 after
7526 signed_check = check; 7526 signed_check = check;
7527 else 7527 else
7528 signed_check = check | ~((bfd_vma) -1 >> howto->rightshift); 7528 signed_check = check | ~((bfd_vma) -1 >> howto->rightshift);
7529 7529
7530 /* Calculate the permissable maximum and minimum values for 7530 /* Calculate the permissable maximum and minimum values for
7531 this relocation according to whether we're relocating for 7531 this relocation according to whether we're relocating for
7532 Thumb-2 or not. */ 7532 Thumb-2 or not. */
7533 bitsize = howto->bitsize; 7533 bitsize = howto->bitsize;
7534 if (!thumb2) 7534 if (!thumb2)
7535 bitsize -= 2; 7535 bitsize -= 2;
7536 » reloc_signed_max = ((1 << (bitsize - 1)) - 1) >> howto->rightshift; 7536 » reloc_signed_max = (1 << (bitsize - 1)) - 1;
7537 reloc_signed_min = ~reloc_signed_max; 7537 reloc_signed_min = ~reloc_signed_max;
7538 7538
7539 /* Assumes two's complement. */ 7539 /* Assumes two's complement. */
7540 if (signed_check > reloc_signed_max || signed_check < reloc_signed_min) 7540 if (signed_check > reloc_signed_max || signed_check < reloc_signed_min)
7541 overflow = TRUE; 7541 overflow = TRUE;
7542 7542
7543 if ((lower_insn & 0x5000) == 0x4000) 7543 if ((lower_insn & 0x5000) == 0x4000)
7544 /* For a BLX instruction, make sure that the relocation is rounded up 7544 /* For a BLX instruction, make sure that the relocation is rounded up
7545 to a word boundary. This follows the semantics of the instruction 7545 to a word boundary. This follows the semantics of the instruction
7546 which specifies that bit 1 of the target address will come from bit 7546 which specifies that bit 1 of the target address will come from bit
(...skipping 6608 matching lines...) Expand 10 before | Expand all | Expand 10 after
14155 #undef elf_backend_may_use_rela_p 14155 #undef elf_backend_may_use_rela_p
14156 #define elf_backend_may_use_rela_p 0 14156 #define elf_backend_may_use_rela_p 0
14157 #undef elf_backend_default_use_rela_p 14157 #undef elf_backend_default_use_rela_p
14158 #define elf_backend_default_use_rela_p 0 14158 #define elf_backend_default_use_rela_p 0
14159 #undef elf_backend_want_plt_sym 14159 #undef elf_backend_want_plt_sym
14160 #define elf_backend_want_plt_sym 0 14160 #define elf_backend_want_plt_sym 0
14161 #undef ELF_MAXPAGESIZE 14161 #undef ELF_MAXPAGESIZE
14162 #define ELF_MAXPAGESIZE 0x8000 14162 #define ELF_MAXPAGESIZE 0x8000
14163 14163
14164 #include "elf32-target.h" 14164 #include "elf32-target.h"
OLDNEW
« no previous file with comments | « binutils/bfd/dwarf2.c ('k') | binutils/bfd/elf32-cris.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698