Browse Source

[ARC] Add Tag_ARC_ATR_version.

Add a new tag (Tag_ARC_ATR_version) used to indicate if current
attributes are interpreted in GNU way. This attribute is used by
Synopsys custom compiler to correctly identify and interpret the
object attributes section as generated by GNU tools.

gas/
2017-08-02  Claudiu Zissulescu <claziss@synopsys.com>

	* config/tc-arc.c (arc_set_public_attributes): Add
	Tag_ARC_ATR_version.
	(arc_convert_symbolic_attribute): Likewise.
	* testsuite/gas/arc/attr-arc600.d: Update test.
	* testsuite/gas/arc/attr-arc600_mul32x16.d: Likewise.
	* testsuite/gas/arc/attr-arc600_norm.d: Likewise.
	* testsuite/gas/arc/attr-arc601.d: Likewise.
	* testsuite/gas/arc/attr-arc601_mul32x16.d: Likewise.
	* testsuite/gas/arc/attr-arc601_mul64.d: Likewise.
	* testsuite/gas/arc/attr-arc601_norm.d: Likewise.
	* testsuite/gas/arc/attr-arc700.d: Likewise.
	* testsuite/gas/arc/attr-arcem.d: Likewise.
	* testsuite/gas/arc/attr-archs.d: Likewise.
	* testsuite/gas/arc/attr-autodetect-1.d: Likewise.
	* testsuite/gas/arc/attr-cpu-a601.d: Likewise.
	* testsuite/gas/arc/attr-cpu-a700.d: Likewise.
	* testsuite/gas/arc/attr-cpu-em.d: Likewise.
	* testsuite/gas/arc/attr-cpu-hs.d: Likewise.
	* testsuite/gas/arc/attr-em.d: Likewise.
	* testsuite/gas/arc/attr-em4.d: Likewise.
	* testsuite/gas/arc/attr-em4_dmips.d: Likewise.
	* testsuite/gas/arc/attr-em4_fpuda.d: Likewise.
	* testsuite/gas/arc/attr-em4_fpus.d: Likewise.
	* testsuite/gas/arc/attr-hs.d: Likewise.
	* testsuite/gas/arc/attr-hs34.d: Likewise.
	* testsuite/gas/arc/attr-hs38.d: Likewise.
	* testsuite/gas/arc/attr-hs38_linux.d: Likewise.
	* testsuite/gas/arc/attr-mul64.d: Likewise.
	* testsuite/gas/arc/attr-name.d: Likewise.
	* testsuite/gas/arc/attr-nps400.d: Likewise.
	* testsuite/gas/arc/attr-override-mcpu.d: Likewise.
	* testsuite/gas/arc/attr-quarkse_em.d: Likewise.

bfd/
2017-08-02  Claudiu Zissulescu <claziss@synopsys.com>

	* elf32-arc.c (arc_elf_merge_attributes): Handle
	Tag_ARC_ATR_version.

binutils/
2017-08-02  Claudiu Zissulescu <claziss@synopsys.com>

	* readelf.c (display_arc_attribute): Print Tag_ARC_ATR_version.

include/
2017-08-02  Claudiu Zissulescu <claziss@synopsys.com>

	* elf/arc.h (Tag_ARC_ATR_version): New tag.

ld/
2017-08-02  Claudiu Zissulescu <claziss@synopsys.com>

	* testsuite/ld-arc/attr-merge-0.d: Update test.
	* testsuite/ld-arc/attr-merge-1.d: Likewise.
	* testsuite/ld-arc/attr-merge-2.d: Likewise.
	* testsuite/ld-arc/attr-merge-3.d: Likewise.
	* testsuite/ld-arc/attr-merge-5.d: Likewise.
users/ahayward/variable_sve
claziss 8 years ago
committed by Claudiu Zissulescu
parent
commit
db1e1b45b4
  1. 5
      bfd/ChangeLog
  2. 6
      bfd/elf32-arc.c
  3. 4
      binutils/ChangeLog
  4. 6
      binutils/readelf.c
  5. 35
      gas/ChangeLog
  6. 6
      gas/config/tc-arc.c
  7. 1
      gas/testsuite/gas/arc/attr-arc600.d
  8. 1
      gas/testsuite/gas/arc/attr-arc600_mul32x16.d
  9. 1
      gas/testsuite/gas/arc/attr-arc600_norm.d
  10. 1
      gas/testsuite/gas/arc/attr-arc601.d
  11. 1
      gas/testsuite/gas/arc/attr-arc601_mul32x16.d
  12. 1
      gas/testsuite/gas/arc/attr-arc601_mul64.d
  13. 1
      gas/testsuite/gas/arc/attr-arc601_norm.d
  14. 1
      gas/testsuite/gas/arc/attr-arc700.d
  15. 1
      gas/testsuite/gas/arc/attr-arcem.d
  16. 1
      gas/testsuite/gas/arc/attr-archs.d
  17. 1
      gas/testsuite/gas/arc/attr-autodetect-1.d
  18. 1
      gas/testsuite/gas/arc/attr-cpu-a601.d
  19. 1
      gas/testsuite/gas/arc/attr-cpu-a700.d
  20. 1
      gas/testsuite/gas/arc/attr-cpu-em.d
  21. 1
      gas/testsuite/gas/arc/attr-cpu-hs.d
  22. 1
      gas/testsuite/gas/arc/attr-em.d
  23. 1
      gas/testsuite/gas/arc/attr-em4.d
  24. 1
      gas/testsuite/gas/arc/attr-em4_dmips.d
  25. 1
      gas/testsuite/gas/arc/attr-em4_fpuda.d
  26. 1
      gas/testsuite/gas/arc/attr-em4_fpus.d
  27. 1
      gas/testsuite/gas/arc/attr-hs.d
  28. 1
      gas/testsuite/gas/arc/attr-hs34.d
  29. 1
      gas/testsuite/gas/arc/attr-hs38.d
  30. 1
      gas/testsuite/gas/arc/attr-hs38_linux.d
  31. 1
      gas/testsuite/gas/arc/attr-mul64.d
  32. 1
      gas/testsuite/gas/arc/attr-name.d
  33. 1
      gas/testsuite/gas/arc/attr-nps400.d
  34. 1
      gas/testsuite/gas/arc/attr-override-mcpu.d
  35. 1
      gas/testsuite/gas/arc/attr-quarkse_em.d
  36. 4
      include/ChangeLog
  37. 3
      include/elf/arc.h
  38. 8
      ld/ChangeLog
  39. 1
      ld/testsuite/ld-arc/attr-merge-0.d
  40. 1
      ld/testsuite/ld-arc/attr-merge-1.d
  41. 1
      ld/testsuite/ld-arc/attr-merge-2.d
  42. 1
      ld/testsuite/ld-arc/attr-merge-3.d
  43. 1
      ld/testsuite/ld-arc/attr-merge-5.d

5
bfd/ChangeLog

@ -1,3 +1,8 @@
2018-08-06 Claudiu Zissulescu <claziss@synopsys.com>
* elf32-arc.c (arc_elf_merge_attributes): Handle
Tag_ARC_ATR_version.
2018-08-05 Alan Modra <amodra@gmail.com>
* elf64-ppc.c (ADDI_R12_R11, ADDI_R12_R12, LIS_R12),

6
bfd/elf32-arc.c

@ -578,6 +578,7 @@ arc_elf_merge_attributes (bfd *ibfd, struct bfd_link_info *info)
bfd_boolean result = TRUE;
const char *sec_name = get_elf_backend_data (ibfd)->obj_attrs_section;
char *tagname = NULL;
int offset = 0;
/* Skip the linker stubs file. This preserves previous behavior
of accepting unknown attributes in the first input file - but
@ -805,6 +806,11 @@ arc_elf_merge_attributes (bfd *ibfd, struct bfd_link_info *info)
/* It is handled in Tag_ARC_CPU_base. */
break;
case Tag_ARC_ATR_version:
if (out_attr[i].i == 0)
out_attr[i].i = in_attr[i].i;
break;
default:
result
= result && _bfd_elf_merge_unknown_attribute_low (ibfd, obfd, i);

4
binutils/ChangeLog

@ -1,3 +1,7 @@
2018-08-06 Claudiu Zissulescu <claziss@synopsys.com>
* readelf.c (display_arc_attribute): Print Tag_ARC_ATR_version.
2018-08-03 Nick Clifton <nickc@redhat.com>
* objcopy.c (merge_gnu_build_notes): Delete empty notes. Merge

6
binutils/readelf.c

@ -14246,6 +14246,12 @@ display_arc_attribute (unsigned char * p,
printf (" Tag_ARC_ISA_mpy_option: %d\n", val);
break;
case Tag_ARC_ATR_version:
val = read_uleb128 (p, &len, end);
p += len;
printf (" Tag_ARC_ATR_version: %d\n", val);
break;
default:
return display_tag_value (tag & 1, p, end);
}

35
gas/ChangeLog

@ -1,3 +1,38 @@
2018-08-06 Claudiu Zissulescu <claziss@synopsys.com>
* config/tc-arc.c (arc_set_public_attributes): Add
Tag_ARC_ATR_version.
(arc_convert_symbolic_attribute): Likewise.
* testsuite/gas/arc/attr-arc600.d: Update test.
* testsuite/gas/arc/attr-arc600_mul32x16.d: Likewise.
* testsuite/gas/arc/attr-arc600_norm.d: Likewise.
* testsuite/gas/arc/attr-arc601.d: Likewise.
* testsuite/gas/arc/attr-arc601_mul32x16.d: Likewise.
* testsuite/gas/arc/attr-arc601_mul64.d: Likewise.
* testsuite/gas/arc/attr-arc601_norm.d: Likewise.
* testsuite/gas/arc/attr-arc700.d: Likewise.
* testsuite/gas/arc/attr-arcem.d: Likewise.
* testsuite/gas/arc/attr-archs.d: Likewise.
* testsuite/gas/arc/attr-autodetect-1.d: Likewise.
* testsuite/gas/arc/attr-cpu-a601.d: Likewise.
* testsuite/gas/arc/attr-cpu-a700.d: Likewise.
* testsuite/gas/arc/attr-cpu-em.d: Likewise.
* testsuite/gas/arc/attr-cpu-hs.d: Likewise.
* testsuite/gas/arc/attr-em.d: Likewise.
* testsuite/gas/arc/attr-em4.d: Likewise.
* testsuite/gas/arc/attr-em4_dmips.d: Likewise.
* testsuite/gas/arc/attr-em4_fpuda.d: Likewise.
* testsuite/gas/arc/attr-em4_fpus.d: Likewise.
* testsuite/gas/arc/attr-hs.d: Likewise.
* testsuite/gas/arc/attr-hs34.d: Likewise.
* testsuite/gas/arc/attr-hs38.d: Likewise.
* testsuite/gas/arc/attr-hs38_linux.d: Likewise.
* testsuite/gas/arc/attr-mul64.d: Likewise.
* testsuite/gas/arc/attr-name.d: Likewise.
* testsuite/gas/arc/attr-nps400.d: Likewise.
* testsuite/gas/arc/attr-override-mcpu.d: Likewise.
* testsuite/gas/arc/attr-quarkse_em.d: Likewise.
2018-08-06 Claudiu Zissulescu <claziss@synopsys.com>
* config/tc-arc.c (find_opcode_match): Accept uppercase aux-regs

6
gas/config/tc-arc.c

@ -5014,6 +5014,9 @@ arc_set_public_attributes (void)
/* Tag_ARC_ABI_tls. */
arc_set_attribute_int (Tag_ARC_ABI_tls, tls_option);
/* Tag_ARC_ATR_version. */
arc_set_attribute_int (Tag_ARC_ATR_version, 1);
}
/* Add the default contents for the .ARC.attributes section. */
@ -5058,7 +5061,8 @@ int arc_convert_symbolic_attribute (const char *name)
T (Tag_ARC_ABI_double_size),
T (Tag_ARC_ISA_config),
T (Tag_ARC_ISA_apex),
T (Tag_ARC_ISA_mpy_option)
T (Tag_ARC_ISA_mpy_option),
T (Tag_ARC_ATR_version)
#undef T
};
unsigned int i;

1
gas/testsuite/gas/arc/attr-arc600.d

@ -8,3 +8,4 @@ File Attributes
Tag_ARC_CPU_base: ARC6xx
Tag_ARC_CPU_name: "arc600"
Tag_ARC_ABI_osver: v4
Tag_ARC_ATR_version: 1

1
gas/testsuite/gas/arc/attr-arc600_mul32x16.d

@ -8,3 +8,4 @@ File Attributes
Tag_ARC_CPU_base: ARC6xx
Tag_ARC_CPU_name: "arc600_mul32x16"
Tag_ARC_ABI_osver: v4
Tag_ARC_ATR_version: 1

1
gas/testsuite/gas/arc/attr-arc600_norm.d

@ -8,3 +8,4 @@ File Attributes
Tag_ARC_CPU_base: ARC6xx
Tag_ARC_CPU_name: "arc600_norm"
Tag_ARC_ABI_osver: v4
Tag_ARC_ATR_version: 1

1
gas/testsuite/gas/arc/attr-arc601.d

@ -8,3 +8,4 @@ File Attributes
Tag_ARC_CPU_base: ARC6xx
Tag_ARC_CPU_name: "arc601"
Tag_ARC_ABI_osver: v4
Tag_ARC_ATR_version: 1

1
gas/testsuite/gas/arc/attr-arc601_mul32x16.d

@ -8,3 +8,4 @@ File Attributes
Tag_ARC_CPU_base: ARC6xx
Tag_ARC_CPU_name: "arc601_mul32x16"
Tag_ARC_ABI_osver: v4
Tag_ARC_ATR_version: 1

1
gas/testsuite/gas/arc/attr-arc601_mul64.d

@ -8,3 +8,4 @@ File Attributes
Tag_ARC_CPU_base: ARC6xx
Tag_ARC_CPU_name: "arc601_mul64"
Tag_ARC_ABI_osver: v4
Tag_ARC_ATR_version: 1

1
gas/testsuite/gas/arc/attr-arc601_norm.d

@ -8,3 +8,4 @@ File Attributes
Tag_ARC_CPU_base: ARC6xx
Tag_ARC_CPU_name: "arc601_norm"
Tag_ARC_ABI_osver: v4
Tag_ARC_ATR_version: 1

1
gas/testsuite/gas/arc/attr-arc700.d

@ -8,3 +8,4 @@ File Attributes
Tag_ARC_CPU_base: ARC7xx
Tag_ARC_CPU_name: "arc700"
Tag_ARC_ABI_osver: v4
Tag_ARC_ATR_version: 1

1
gas/testsuite/gas/arc/attr-arcem.d

@ -8,3 +8,4 @@ File Attributes
Tag_ARC_CPU_base: ARCEM
Tag_ARC_CPU_name: "arcem"
Tag_ARC_ABI_osver: v4
Tag_ARC_ATR_version: 1

1
gas/testsuite/gas/arc/attr-archs.d

@ -9,3 +9,4 @@ File Attributes
Tag_ARC_CPU_name: "archs"
Tag_ARC_ABI_osver: v4
Tag_ARC_ISA_config: "CD"
Tag_ARC_ATR_version: 1

1
gas/testsuite/gas/arc/attr-autodetect-1.d

@ -9,3 +9,4 @@ File Attributes
Tag_ARC_ABI_pic: GNU
Tag_ARC_ABI_tls: r25
Tag_ARC_ISA_config: "CD"
Tag_ARC_ATR_version: 1

1
gas/testsuite/gas/arc/attr-cpu-a601.d

@ -6,3 +6,4 @@ File Attributes
Tag_ARC_CPU_base: ARC6xx
Tag_ARC_CPU_name: "arc601"
Tag_ARC_ABI_osver: v4
Tag_ARC_ATR_version: 1

1
gas/testsuite/gas/arc/attr-cpu-a700.d

@ -6,3 +6,4 @@ File Attributes
Tag_ARC_CPU_base: ARC7xx
Tag_ARC_CPU_name: "arc700"
Tag_ARC_ABI_osver: v4
Tag_ARC_ATR_version: 1

1
gas/testsuite/gas/arc/attr-cpu-em.d

@ -6,3 +6,4 @@ File Attributes
Tag_ARC_CPU_base: ARCEM
Tag_ARC_CPU_name: "em"
Tag_ARC_ABI_osver: v4
Tag_ARC_ATR_version: 1

1
gas/testsuite/gas/arc/attr-cpu-hs.d

@ -7,3 +7,4 @@ File Attributes
Tag_ARC_CPU_name: "hs"
Tag_ARC_ABI_osver: v4
Tag_ARC_ISA_config: "CD"
Tag_ARC_ATR_version: 1

1
gas/testsuite/gas/arc/attr-em.d

@ -8,3 +8,4 @@ File Attributes
Tag_ARC_CPU_base: ARCEM
Tag_ARC_CPU_name: "em"
Tag_ARC_ABI_osver: v4
Tag_ARC_ATR_version: 1

1
gas/testsuite/gas/arc/attr-em4.d

@ -9,3 +9,4 @@ File Attributes
Tag_ARC_CPU_name: "em4"
Tag_ARC_ABI_osver: v4
Tag_ARC_ISA_config: "CD"
Tag_ARC_ATR_version: 1

1
gas/testsuite/gas/arc/attr-em4_dmips.d

@ -9,3 +9,4 @@ File Attributes
Tag_ARC_CPU_name: "em4_dmips"
Tag_ARC_ABI_osver: v4
Tag_ARC_ISA_config: "CD"
Tag_ARC_ATR_version: 1

1
gas/testsuite/gas/arc/attr-em4_fpuda.d

@ -9,3 +9,4 @@ File Attributes
Tag_ARC_CPU_name: "em4_fpuda"
Tag_ARC_ABI_osver: v4
Tag_ARC_ISA_config: "CD,FPUDA"
Tag_ARC_ATR_version: 1

1
gas/testsuite/gas/arc/attr-em4_fpus.d

@ -9,3 +9,4 @@ File Attributes
Tag_ARC_CPU_name: "em4_fpus"
Tag_ARC_ABI_osver: v4
Tag_ARC_ISA_config: "CD"
Tag_ARC_ATR_version: 1

1
gas/testsuite/gas/arc/attr-hs.d

@ -9,3 +9,4 @@ File Attributes
Tag_ARC_CPU_name: "hs"
Tag_ARC_ABI_osver: v4
Tag_ARC_ISA_config: "CD"
Tag_ARC_ATR_version: 1

1
gas/testsuite/gas/arc/attr-hs34.d

@ -9,3 +9,4 @@ File Attributes
Tag_ARC_CPU_name: "hs34"
Tag_ARC_ABI_osver: v4
Tag_ARC_ISA_config: "CD"
Tag_ARC_ATR_version: 1

1
gas/testsuite/gas/arc/attr-hs38.d

@ -9,3 +9,4 @@ File Attributes
Tag_ARC_CPU_name: "hs38"
Tag_ARC_ABI_osver: v4
Tag_ARC_ISA_config: "CD"
Tag_ARC_ATR_version: 1

1
gas/testsuite/gas/arc/attr-hs38_linux.d

@ -9,3 +9,4 @@ File Attributes
Tag_ARC_CPU_name: "hs38_linux"
Tag_ARC_ABI_osver: v4
Tag_ARC_ISA_config: "CD"
Tag_ARC_ATR_version: 1

1
gas/testsuite/gas/arc/attr-mul64.d

@ -8,3 +8,4 @@ File Attributes
Tag_ARC_CPU_base: ARC6xx
Tag_ARC_CPU_name: "arc600_mul64"
Tag_ARC_ABI_osver: v4
Tag_ARC_ATR_version: 1

1
gas/testsuite/gas/arc/attr-name.d

@ -20,3 +20,4 @@ File Attributes
Tag_ARC_ISA_config: "CD,FPUDA"
Tag_ARC_ISA_apex: "QUARKSE"
Tag_ARC_ISA_mpy_option: 6
Tag_ARC_ATR_version: 1

1
gas/testsuite/gas/arc/attr-nps400.d

@ -9,3 +9,4 @@ File Attributes
Tag_ARC_CPU_name: "nps400"
Tag_ARC_ABI_osver: v4
Tag_ARC_ISA_config: "NPS400"
Tag_ARC_ATR_version: 1

1
gas/testsuite/gas/arc/attr-override-mcpu.d

@ -8,3 +8,4 @@ File Attributes
Tag_ARC_CPU_name: "archs"
Tag_ARC_ABI_osver: v4
Tag_ARC_ISA_config: "CD"
Tag_ARC_ATR_version: 1

1
gas/testsuite/gas/arc/attr-quarkse_em.d

@ -9,3 +9,4 @@ File Attributes
Tag_ARC_CPU_name: "quarkse_em"
Tag_ARC_ABI_osver: v4
Tag_ARC_ISA_config: "CD,DPFP,SPFP"
Tag_ARC_ATR_version: 1

4
include/ChangeLog

@ -1,3 +1,7 @@
2018-08-06 Claudiu Zissulescu <claziss@synopsys.com>
* elf/arc.h (Tag_ARC_ATR_version): New tag.
2018-08-06 Claudiu Zissulescu <claziss@synopsys.com>
* opcode/arc.h (ARC_OPCODE_ARCV1): Define.

3
include/elf/arc.h

@ -83,7 +83,8 @@ enum {
Tag_ARC_ABI_double_size,
Tag_ARC_ISA_config,
Tag_ARC_ISA_apex,
Tag_ARC_ISA_mpy_option
Tag_ARC_ISA_mpy_option,
Tag_ARC_ATR_version = 20
};
/* Values for the Tag_ARC_cpu_base attribute. */

8
ld/ChangeLog

@ -1,3 +1,11 @@
2018-08-06 Claudiu Zissulescu <claziss@synopsys.com>
* testsuite/ld-arc/attr-merge-0.d: Update test.
* testsuite/ld-arc/attr-merge-1.d: Likewise.
* testsuite/ld-arc/attr-merge-2.d: Likewise.
* testsuite/ld-arc/attr-merge-3.d: Likewise.
* testsuite/ld-arc/attr-merge-5.d: Likewise.
2018-08-05 Alan Modra <amodra@gmail.com>
* testsuite/ld-powerpc/ext.d,

1
ld/testsuite/ld-arc/attr-merge-0.d

@ -10,3 +10,4 @@ File Attributes
Tag_ARC_CPU_name: "em"
Tag_ARC_ABI_osver: v4
Tag_ARC_ISA_config: "CD"
Tag_ARC_ATR_version: 1

1
ld/testsuite/ld-arc/attr-merge-1.d

@ -10,3 +10,4 @@ File Attributes
Tag_ARC_CPU_name: "em"
Tag_ARC_ABI_osver: v4
Tag_ARC_ISA_config: "CD,DPFP,SPFP"
Tag_ARC_ATR_version: 1

1
ld/testsuite/ld-arc/attr-merge-2.d

@ -10,3 +10,4 @@ File Attributes
Tag_ARC_CPU_name: "em"
Tag_ARC_ABI_osver: v5
Tag_ARC_ISA_config: "CD"
Tag_ARC_ATR_version: 1

1
ld/testsuite/ld-arc/attr-merge-3.d

@ -10,3 +10,4 @@ File Attributes
Tag_ARC_CPU_name: "archs"
Tag_ARC_ABI_osver: v4
Tag_ARC_ISA_config: "CD,FPUS"
Tag_ARC_ATR_version: 1

1
ld/testsuite/ld-arc/attr-merge-5.d

@ -11,3 +11,4 @@ File Attributes
Tag_ARC_ABI_osver: v4
Tag_ARC_ISA_config: "CD,FPUDA,BS"
Tag_ARC_ISA_mpy_option: 6
Tag_ARC_ATR_version: 1

Loading…
Cancel
Save