summaryrefslogtreecommitdiff
path: root/ld/ld_arch.h
diff options
context:
space:
mode:
Diffstat (limited to 'ld/ld_arch.h')
-rw-r--r--ld/ld_arch.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/ld/ld_arch.h b/ld/ld_arch.h
index f1f840339138..2165627d68d0 100644
--- a/ld/ld_arch.h
+++ b/ld/ld_arch.h
@@ -23,7 +23,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id: ld_arch.h 2913 2013-02-16 07:15:24Z kaiwang27 $
+ * $Id: ld_arch.h 3281 2015-12-11 21:39:23Z kaiwang27 $
*/
#define MAX_ARCH_NAME_LEN 64
@@ -47,11 +47,13 @@ struct ld_arch {
void (*finalize_reloc)(struct ld *, struct ld_input_section *,
struct ld_reloc_entry *);
void (*finalize_got_and_plt)(struct ld *);
+ void (*merge_flags)(struct ld *, unsigned flags);
int (*is_absolute_reloc)(uint64_t);
int (*is_relative_reloc)(uint64_t);
unsigned char reloc_is_64bit;
unsigned char reloc_is_rela;
size_t reloc_entsize;
+ unsigned flags; /* processor-specific flags */
UT_hash_handle hh;
struct ld_arch *alias;
};
@@ -59,7 +61,7 @@ struct ld_arch {
void ld_arch_init(struct ld *);
int ld_arch_equal(struct ld_arch *, struct ld_arch *);
struct ld_arch *ld_arch_find(struct ld *, char *);
-struct ld_arch *ld_arch_guess_arch_name(struct ld *, int);
+struct ld_arch *ld_arch_guess_arch_name(struct ld *, int, int);
void ld_arch_set(struct ld *, char *);
void ld_arch_set_from_target(struct ld *);
-void ld_arch_verify(struct ld *, const char *, int);
+void ld_arch_verify(struct ld *, const char *, int, int, unsigned);