diff options
author | Ian Lance Taylor <ian@airs.com> | 2010-10-12 19:00:30 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 2010-10-12 19:00:30 +0000 |
commit | 3cef71791839860d05c8c4246c4e1ce2520b44ca (patch) | |
tree | fed8610f762e9bf605348536bed9c2ef922e4935 /gold/arm.cc | |
parent | 93c17e06d2bbc70353ed0e8df3456f4cb35346f8 (diff) | |
download | binutils-3cef71791839860d05c8c4246c4e1ce2520b44ca.zip binutils-3cef71791839860d05c8c4246c4e1ce2520b44ca.tar.gz binutils-3cef71791839860d05c8c4246c4e1ce2520b44ca.tar.bz2 |
* arm.cc (Target_arm::Scan::local): Report the unsupported reloc
error for the deprecated relocations.
(Target_arm::Scan::global): Likewise.
(Target_arm::Relocate::relocate): Likewise.
Diffstat (limited to 'gold/arm.cc')
-rw-r--r-- | gold/arm.cc | 25 |
1 files changed, 16 insertions, 9 deletions
diff --git a/gold/arm.cc b/gold/arm.cc index d6590f0..269fe69 100644 --- a/gold/arm.cc +++ b/gold/arm.cc @@ -7633,7 +7633,6 @@ Target_arm<big_endian>::Scan::local(Symbol_table* symtab, } break; - case elfcpp::R_ARM_PC24: case elfcpp::R_ARM_REL32: case elfcpp::R_ARM_LDR_PC_G0: case elfcpp::R_ARM_SBREL32: @@ -7644,9 +7643,6 @@ Target_arm<big_endian>::Scan::local(Symbol_table* symtab, case elfcpp::R_ARM_CALL: case elfcpp::R_ARM_JUMP24: case elfcpp::R_ARM_THM_JUMP24: - case elfcpp::R_ARM_LDR_SBREL_11_0_NC: - case elfcpp::R_ARM_ALU_SBREL_19_12_NC: - case elfcpp::R_ARM_ALU_SBREL_27_20_CK: case elfcpp::R_ARM_SBREL31: case elfcpp::R_ARM_PREL31: case elfcpp::R_ARM_MOVW_PREL_NC: @@ -7850,6 +7846,10 @@ Target_arm<big_endian>::Scan::local(Symbol_table* symtab, } break; + case elfcpp::R_ARM_PC24: + case elfcpp::R_ARM_LDR_SBREL_11_0_NC: + case elfcpp::R_ARM_ALU_SBREL_19_12_NC: + case elfcpp::R_ARM_ALU_SBREL_27_20_CK: default: unsupported_reloc_local(object, r_type); break; @@ -8028,9 +8028,6 @@ Target_arm<big_endian>::Scan::global(Symbol_table* symtab, case elfcpp::R_ARM_SBREL32: case elfcpp::R_ARM_THM_PC8: case elfcpp::R_ARM_BASE_PREL: - case elfcpp::R_ARM_LDR_SBREL_11_0_NC: - case elfcpp::R_ARM_ALU_SBREL_19_12_NC: - case elfcpp::R_ARM_ALU_SBREL_27_20_CK: case elfcpp::R_ARM_MOVW_PREL_NC: case elfcpp::R_ARM_MOVT_PREL: case elfcpp::R_ARM_THM_MOVW_PREL_NC: @@ -8093,7 +8090,6 @@ Target_arm<big_endian>::Scan::global(Symbol_table* symtab, } break; - case elfcpp::R_ARM_PC24: case elfcpp::R_ARM_THM_CALL: case elfcpp::R_ARM_PLT32: case elfcpp::R_ARM_CALL: @@ -8262,6 +8258,10 @@ Target_arm<big_endian>::Scan::global(Symbol_table* symtab, } break; + case elfcpp::R_ARM_PC24: + case elfcpp::R_ARM_LDR_SBREL_11_0_NC: + case elfcpp::R_ARM_ALU_SBREL_19_12_NC: + case elfcpp::R_ARM_ALU_SBREL_27_20_CK: default: unsupported_reloc_global(object, r_type, gsym); break; @@ -9040,8 +9040,15 @@ Target_arm<big_endian>::Relocate::relocate( view, address, view_size); break; + // The known and unknown unsupported and/or deprecated relocations. + case elfcpp::R_ARM_PC24: + case elfcpp::R_ARM_LDR_SBREL_11_0_NC: + case elfcpp::R_ARM_ALU_SBREL_19_12_NC: + case elfcpp::R_ARM_ALU_SBREL_27_20_CK: default: - gold_unreachable(); + // Just silently leave the method. We should get an appropriate error + // message in the scan methods. + break; } // Report any errors. |