diff options
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/ChangeLog | 6 | ||||
-rw-r--r-- | bfd/elf32-arm.c | 8 |
2 files changed, 13 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index e5bedae..aea882b 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2015-12-24 Thomas Preud'homme <thomas.preudhomme@arm.com> + + (tag_cpu_arch_combine): Adjust v4t_plus_v6_m and comb array to account + for new TAG_CPU_ARCH_V4T_PLUS_V6_M value. Deal with NULL values in + comb array. + 2015-12-22 Yury Usishchev <y.usishchev@samsung.com> * elf-bfd.h: Add callback to count additional relocations. diff --git a/bfd/elf32-arm.c b/bfd/elf32-arm.c index 583db4d..93f32f3 100644 --- a/bfd/elf32-arm.c +++ b/bfd/elf32-arm.c @@ -12292,6 +12292,9 @@ tag_cpu_arch_combine (bfd *ibfd, int oldtag, int *secondary_compat_out, T(V6S_M), /* V6S_M. */ T(V7E_M), /* V7E_M. */ T(V8), /* V8. */ + -1, /* Unused. */ + -1, /* Unused. */ + -1, /* V8-M MAINLINE. */ T(V4T_PLUS_V6_M) /* V4T plus V6_M. */ }; const int *comb[] = @@ -12303,6 +12306,9 @@ tag_cpu_arch_combine (bfd *ibfd, int oldtag, int *secondary_compat_out, v6s_m, v7e_m, v8, + NULL, + NULL, + NULL, /* Pseudo-architecture. */ v4t_plus_v6_m }; @@ -12335,7 +12341,7 @@ tag_cpu_arch_combine (bfd *ibfd, int oldtag, int *secondary_compat_out, if (tagh <= TAG_CPU_ARCH_V6KZ) return result; - result = comb[tagh - T(V6T2)][tagl]; + result = comb[tagh - T(V6T2)] ? comb[tagh - T(V6T2)][tagl] : -1; /* Use Tag_CPU_arch == V4T and Tag_also_compatible_with (Tag_CPU_arch V6_M) as the canonical version. */ |