• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /* Interface for libebl_PPC module.
2    Copyright (C) 2004 Red Hat, Inc.
3 
4    This program is Open Source software; you can redistribute it and/or
5    modify it under the terms of the Open Software License version 1.0 as
6    published by the Open Source Initiative.
7 
8    You should have received a copy of the Open Software License along
9    with this program; if not, you may obtain a copy of the Open Software
10    License version 1.0 from http://www.opensource.org/licenses/osl.php or
11    by writing the Open Source Initiative c/o Lawrence Rosen, Esq.,
12    3001 King Ranch Road, Ukiah, CA 95482.   */
13 
14 #ifndef _LIBEBL_PPC_H
15 #define _LIBEBL_PPC_H 1
16 
17 #include <libeblP.h>
18 
19 
20 /* Constructor.  */
21 extern int ppc_init (Elf *elf, GElf_Half machine, Ebl *eh, size_t ehlen);
22 
23 /* Destructor.  */
24 extern void ppc_destr (Ebl *bh);
25 
26 
27 /* Function to get relocation type name.  */
28 extern const char *ppc_reloc_type_name (int type, char *buf, size_t len);
29 
30 /* Check relocation type.  */
31 extern bool ppc_reloc_type_check (int type);
32 
33 /* Check relocation type use.  */
34 extern bool ppc_reloc_valid_use (Elf *elf, int type);
35 
36 /* Code note handling.  */
37 extern bool ppc_core_note (const char *name, uint32_t type, uint32_t descsz,
38 			      const char *desc);
39 
40 #endif	/* libebl_ppc.h */
41