blob: 4fadd9b4e795f828f2aab9641a9b0ea4f68f43c8 [file] [log] [blame]
Ulrich Drepperb08d5a82005-07-26 05:00:05 +00001/* Initialization of SH specific backend library.
2 Copyright (C) 2000, 2001, 2002, 2005 Red Hat, Inc.
3 Written by Ulrich Drepper <drepper@redhat.com>, 2000.
4
5 This program is Open Source software; you can redistribute it and/or
6 modify it under the terms of the Open Software License version 1.0 as
7 published by the Open Source Initiative.
8
9 You should have received a copy of the Open Software License along
10 with this program; if not, you may obtain a copy of the Open Software
11 License version 1.0 from http://www.opensource.org/licenses/osl.php or
12 by writing the Open Source Initiative c/o Lawrence Rosen, Esq.,
13 3001 King Ranch Road, Ukiah, CA 95482. */
14
15#ifdef HAVE_CONFIG_H
16# include <config.h>
17#endif
18
Roland McGrathcd60ea82005-11-16 01:57:40 +000019#define BACKEND sh_
20#define RELOC_PREFIX R_SH_
21#include "libebl_CPU.h"
22
23/* This defines the common reloc hooks based on sh_reloc.def. */
24#include "common-reloc.c"
Ulrich Drepperb08d5a82005-07-26 05:00:05 +000025
26
27const char *
28sh_init (elf, machine, eh, ehlen)
29 Elf *elf __attribute__ ((unused));
30 GElf_Half machine __attribute__ ((unused));
31 Ebl *eh;
32 size_t ehlen;
33{
34 /* Check whether the Elf_BH object has a sufficent size. */
35 if (ehlen < sizeof (Ebl))
36 return NULL;
37
38 /* We handle it. */
39 eh->name = "Hitachi SH";
Roland McGrathcd60ea82005-11-16 01:57:40 +000040 sh_init_reloc (eh);
41 eh->reloc_simple_type = sh_reloc_simple_type;
Ulrich Drepperb08d5a82005-07-26 05:00:05 +000042
43 return MODVERSION;
44}