[ARC] Update warning reporting.
authorClaudiu Zissulescu <claziss@gmail.com>
Mon, 6 Aug 2018 13:41:32 +0000 (16:41 +0300)
committerClaudiu Zissulescu <claziss@gmail.com>
Mon, 6 Aug 2018 13:41:32 +0000 (16:41 +0300)
MWDT compiler doesn't use eflags and makes use of 0x0c section. For
those, silence the gnu warning system.

bfd/
  Claudiu Zissulescu <claziss@synopsys.com>

        * elf32-arc.c (arc_elf_merge_private_bfd_data): Complain about
        efalgs only when in/out exists.
        (elf32_arc_section_from_shdr): Don't complain about 0x0c section
        type.  It is mwdt compiler specific.

bfd/ChangeLog
bfd/elf32-arc.c

index 98f0f170161bea32eaf9dd2d034404a32d72def5..b12e02421cf6d47a133ceec8a157a53c7c4f8cb2 100644 (file)
@@ -1,3 +1,10 @@
+2018-08-06  Claudiu Zissulescu  <claziss@synopsys.com>
+
+       * elf32-arc.c (arc_elf_merge_private_bfd_data): Complain about
+       efalgs only when in/out exists.
+       (elf32_arc_section_from_shdr): Don't complain about 0x0c
+       section type.  It is mwdt compiler specific.
+
 2018-08-06  Claudiu Zissulescu  <claziss@synopsys.com>
 
        * elf32-arc.c (arc_elf_merge_attributes): Fix merge attributes.
index 25c96663633dc379c9c24527cb92a026ed3f3401..62366a7dd2c76b735f67e3bbe75a5eb66ff2bc6a 100644 (file)
@@ -917,14 +917,16 @@ arc_elf_merge_private_bfd_data (bfd *ibfd, struct bfd_link_info *info)
               && !bfd_elf_get_obj_attr_int (ibfd, OBJ_ATTR_PROC,
                                             Tag_ARC_CPU_base))
        {
-         /* Warn if different flags.  */
-         _bfd_error_handler
-           /* xgettext:c-format */
-           (_("%pB: uses different e_flags (%#x) fields than "
-              "previous modules (%#x)"),
-            ibfd, in_flags, out_flags);
          if (in_flags && out_flags)
-           return FALSE;
+           {
+             /* Warn if different flags.  */
+             _bfd_error_handler
+               /* xgettext:c-format */
+               (_("%pB: uses different e_flags (%#x) fields than "
+                  "previous modules (%#x)"),
+                ibfd, in_flags, out_flags);
+             return FALSE;
+           }
          /* MWDT doesnt set the eflags hence make sure we choose the
             eflags set by gcc.  */
          in_flags = in_flags > out_flags ? in_flags : out_flags;
@@ -2894,6 +2896,7 @@ elf32_arc_section_from_shdr (bfd *abfd,
 {
   switch (hdr->sh_type)
     {
+    case 0x0c: /* MWDT specific section, don't complain about it.  */
     case SHT_ARC_ATTRIBUTES:
       break;
 
This page took 0.028647 seconds and 4 git commands to generate.