diff options
-rw-r--r-- | bfd/elf32-arm.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/bfd/elf32-arm.c b/bfd/elf32-arm.c index 79b94e8..cb567fe 100644 --- a/bfd/elf32-arm.c +++ b/bfd/elf32-arm.c @@ -3888,9 +3888,11 @@ using_thumb2 (struct elf32_arm_link_hash_table *globals) int thumb_isa = bfd_elf_get_obj_attr_int (globals->obfd, OBJ_ATTR_PROC, Tag_THUMB_ISA_use); - if (thumb_isa) + /* No use of thumb permitted, or a legacy thumb-1/2 definition. */ + if (thumb_isa < 3) return thumb_isa == 2; + /* Variant of thumb is described by the architecture tag. */ arch = bfd_elf_get_obj_attr_int (globals->obfd, OBJ_ATTR_PROC, Tag_CPU_arch); /* Force return logic to be reviewed for each new architecture. */ |