• Skip to sidebar navigation
  • Skip to content

Bitbucket

  • More
    ProjectsRepositories
  • Help
    • Online help
    • Learn Git
    • Welcome to Bitbucket
    • Keyboard shortcuts
  • Log In
Alexander Dahl
  1. Alexander Dahl

buildroot

Public
Actions
  • Clone
  • Compare

Learn more about cloning repositories

You have read-only access

Navigation
  • Source
  • Commits
  • Branches
  • All Branches Graph
  • Forks
  1. Alexander Dahl
  2. buildroot

Source

buildroot/package/binutils/2.26.1/0901-Fix-assertion-reduce-number-of-messages-about-FDE-en.patch
Gustavo ZacariasGustavo Zacarias committed 1f5d176ebf630 Jun 2016
Raw file
Source viewDiff to previous
xxxxxxxxxx
 
1
From 39c481c2fb0e7fb127a15facf70b55d517462809 Mon Sep 17 00:00:00 2001
2
From: Romain Naour <romain.naour@gmail.com>
3
Date: Sat, 6 Feb 2016 00:35:31 +0100
4
Subject: [PATCH 901/901] Fix assertion, reduce number of messages about FDE
5
 encoding
6
​
7
Patch by Nick Clifton [1]
8
​
9
[1] https://sourceware.org/bugzilla/show_bug.cgi?id=19405
10
​
11
Signed-off-by: Romain Naour <romain.naour@gmail.com>
12
---
13
 bfd/elf-eh-frame.c | 17 ++++++++++++++---
14
 bfd/elf32-nios2.c  |  4 ++--
15
 2 files changed, 16 insertions(+), 5 deletions(-)
16
​
17
diff --git a/bfd/elf-eh-frame.c b/bfd/elf-eh-frame.c
18
index e303189..e79bff0 100644
19
--- a/bfd/elf-eh-frame.c
20
+++ b/bfd/elf-eh-frame.c
21
@@ -1369,14 +1369,25 @@ _bfd_elf_discard_section_eh_frame
22
             && ent->make_relative == 0)
23
            || (ent->fde_encoding & 0x70) == DW_EH_PE_aligned))
24
          {
25
+       static int num_warnings_issued = 0;
26
        /* If a shared library uses absolute pointers
27
           which we cannot turn into PC relative,
28
           don't create the binary search table,
29
           since it is affected by runtime relocations.  */
30
        hdr_info->u.dwarf.table = FALSE;
31
-       (*info->callbacks->einfo)
32
-         (_("%P: FDE encoding in %B(%A) prevents .eh_frame_hdr"
33
-            " table being created.\n"), abfd, sec);
34
+       if (num_warnings_issued < 10)
35
+         {
36
+           (*info->callbacks->einfo)
37
+             (_("%P: FDE encoding in %B(%A) prevents .eh_frame_hdr"
38
+            " table being created.\n"), abfd, sec);
39
+           num_warnings_issued ++;
40
+         }
41
+       else if (num_warnings_issued == 10)
42
+         {
43
+           (*info->callbacks->einfo)
44
+             (_("%P: Further warnings about FDE encoding preventing .eh_frame_hdr generation dropped.\n"));
45
+           num_warnings_issued ++;
46
+         }
47
          }
48
        ent->removed = 0;
49
        hdr_info->u.dwarf.fde_count++;
50
diff --git a/bfd/elf32-nios2.c b/bfd/elf32-nios2.c
51
index 01ebd6e..d1b7f83 100644
52
--- a/bfd/elf32-nios2.c
53
+++ b/bfd/elf32-nios2.c
54
@@ -1905,8 +1905,8 @@ nios2_elf32_install_imm16 (asection *sec, bfd_vma offset, bfd_vma value)
55
 {
56
   bfd_vma word = bfd_get_32 (sec->owner, sec->contents + offset);
57
 
58
-  BFD_ASSERT(value <= 0xffff);
59
-
60
+  BFD_ASSERT (value <= 0xffff || ((bfd_signed_vma) value) >= -0xffff);
61
+  
62
   bfd_put_32 (sec->owner, word | ((value & 0xffff) << 6),
63
          sec->contents + offset);
64
 }
65
-- 
66
2.4.3
67
​
  • Git repository management for enterprise teams powered by Atlassian Bitbucket
  • Atlassian Bitbucket v6.7.2
  • Documentation
  • Request a feature
  • About
  • Contact Atlassian
Atlassian

Everything looks good. We'll let you know here if there's anything you should know about.