Convert to ISO C90 formatting
[binutils-gdb.git] / bfd / mach-o.h
index 401a59aff70b7c386d0ba1a8d3ebb756a7b6e16a..5abe539891bcaeb7378541246fbc1e6caeab639b 100644 (file)
@@ -1,5 +1,5 @@
 /* Mach-O support for BFD.
-   Copyright 1999, 2000, 2001, 2002, 2003
+   Copyright 1999, 2000, 2001, 2002, 2003, 2005
    Free Software Foundation, Inc.
 
    This file is part of BFD, the Binary File Descriptor library.
 #define BFD_MACH_O_N_INDR  0x0a        /* Indirect.  */
 
 typedef enum bfd_mach_o_ppc_thread_flavour
-  {
-    BFD_MACH_O_PPC_THREAD_STATE = 1,
-    BFD_MACH_O_PPC_FLOAT_STATE = 2,
-    BFD_MACH_O_PPC_EXCEPTION_STATE = 3,
-    BFD_MACH_O_PPC_VECTOR_STATE = 4
-  }
+{
+  BFD_MACH_O_PPC_THREAD_STATE = 1,
+  BFD_MACH_O_PPC_FLOAT_STATE = 2,
+  BFD_MACH_O_PPC_EXCEPTION_STATE = 3,
+  BFD_MACH_O_PPC_VECTOR_STATE = 4
+}
 bfd_mach_o_ppc_thread_flavour;
 
 typedef enum bfd_mach_o_i386_thread_flavour
-  {
-    BFD_MACH_O_i386_NEW_THREAD_STATE = 1,
-    BFD_MACH_O_i386_FLOAT_STATE = 2,
-    BFD_MACH_O_i386_ISA_PORT_MAP_STATE = 3,
-    BFD_MACH_O_i386_V86_ASSIST_STATE = 4,
-    BFD_MACH_O_i386_REGS_SEGS_STATE = 5,
-    BFD_MACH_O_i386_THREAD_SYSCALL_STATE = 6,
-    BFD_MACH_O_i386_THREAD_STATE_NONE = 7,
-    BFD_MACH_O_i386_SAVED_STATE = 8,
-    BFD_MACH_O_i386_THREAD_STATE = -1,
-    BFD_MACH_O_i386_THREAD_FPSTATE = -2,
-    BFD_MACH_O_i386_THREAD_EXCEPTSTATE = -3,
-    BFD_MACH_O_i386_THREAD_CTHREADSTATE = -4,
-  }
+{
+  BFD_MACH_O_i386_NEW_THREAD_STATE = 1,
+  BFD_MACH_O_i386_FLOAT_STATE = 2,
+  BFD_MACH_O_i386_ISA_PORT_MAP_STATE = 3,
+  BFD_MACH_O_i386_V86_ASSIST_STATE = 4,
+  BFD_MACH_O_i386_REGS_SEGS_STATE = 5,
+  BFD_MACH_O_i386_THREAD_SYSCALL_STATE = 6,
+  BFD_MACH_O_i386_THREAD_STATE_NONE = 7,
+  BFD_MACH_O_i386_SAVED_STATE = 8,
+  BFD_MACH_O_i386_THREAD_STATE = -1,
+  BFD_MACH_O_i386_THREAD_FPSTATE = -2,
+  BFD_MACH_O_i386_THREAD_EXCEPTSTATE = -3,
+  BFD_MACH_O_i386_THREAD_CTHREADSTATE = -4,
+}
 bfd_mach_o_i386_thread_flavour;
 
 #define BFD_MACH_O_LC_REQ_DYLD 0x80000000
 
 typedef enum bfd_mach_o_load_command_type
-  {
-    BFD_MACH_O_LC_SEGMENT = 0x1,       /* File segment to be mapped.  */
-    BFD_MACH_O_LC_SYMTAB = 0x2,                /* Link-edit stab symbol table info (obsolete).  */
-    BFD_MACH_O_LC_SYMSEG = 0x3,                /* Link-edit gdb symbol table info.  */
-    BFD_MACH_O_LC_THREAD = 0x4,                /* Thread.  */
-    BFD_MACH_O_LC_UNIXTHREAD = 0x5,    /* UNIX thread (includes a stack).  */
-    BFD_MACH_O_LC_LOADFVMLIB = 0x6,    /* Load a fixed VM shared library.  */
-    BFD_MACH_O_LC_IDFVMLIB = 0x7,      /* Fixed VM shared library id.  */
-    BFD_MACH_O_LC_IDENT = 0x8,         /* Object identification information (obsolete).  */
-    BFD_MACH_O_LC_FVMFILE = 0x9,       /* Fixed VM file inclusion.  */
-    BFD_MACH_O_LC_PREPAGE = 0xa,       /* Prepage command (internal use).  */
-    BFD_MACH_O_LC_DYSYMTAB = 0xb,      /* Dynamic link-edit symbol table info.  */
-    BFD_MACH_O_LC_LOAD_DYLIB = 0xc,    /* Load a dynamically linked shared library.  */
-    BFD_MACH_O_LC_ID_DYLIB = 0xd,      /* Dynamically linked shared lib identification.  */
-    BFD_MACH_O_LC_LOAD_DYLINKER = 0xe, /* Load a dynamic linker.  */
-    BFD_MACH_O_LC_ID_DYLINKER = 0xf,   /* Dynamic linker identification.  */
-    BFD_MACH_O_LC_PREBOUND_DYLIB = 0x10,/* Modules prebound for a dynamically.  */
-    BFD_MACH_O_LC_ROUTINES = 0x11,     /* Image routines.  */
-    BFD_MACH_O_LC_SUB_FRAMEWORK = 0x12,        /* Sub framework.  */
-    BFD_MACH_O_LC_SUB_UMBRELLA = 0x13, /* Sub umbrella.  */
-    BFD_MACH_O_LC_SUB_CLIENT = 0x14,   /* Sub client.  */
-    BFD_MACH_O_LC_SUB_LIBRARY = 0x15,   /* Sub library.  */
-    BFD_MACH_O_LC_TWOLEVEL_HINTS = 0x16,/* Two-level namespace lookup hints.  */
-    BFD_MACH_O_LC_PREBIND_CKSUM = 0x17, /* Prebind checksum.  */
-    /* Load a dynamically linked shared library that is allowed to be
+{
+  BFD_MACH_O_LC_SEGMENT = 0x1,         /* File segment to be mapped.  */
+  BFD_MACH_O_LC_SYMTAB = 0x2,          /* Link-edit stab symbol table info (obsolete).  */
+  BFD_MACH_O_LC_SYMSEG = 0x3,          /* Link-edit gdb symbol table info.  */
+  BFD_MACH_O_LC_THREAD = 0x4,          /* Thread.  */
+  BFD_MACH_O_LC_UNIXTHREAD = 0x5,      /* UNIX thread (includes a stack).  */
+  BFD_MACH_O_LC_LOADFVMLIB = 0x6,      /* Load a fixed VM shared library.  */
+  BFD_MACH_O_LC_IDFVMLIB = 0x7,                /* Fixed VM shared library id.  */
+  BFD_MACH_O_LC_IDENT = 0x8,           /* Object identification information (obsolete).  */
+  BFD_MACH_O_LC_FVMFILE = 0x9,         /* Fixed VM file inclusion.  */
+  BFD_MACH_O_LC_PREPAGE = 0xa,         /* Prepage command (internal use).  */
+  BFD_MACH_O_LC_DYSYMTAB = 0xb,                /* Dynamic link-edit symbol table info.  */
+  BFD_MACH_O_LC_LOAD_DYLIB = 0xc,      /* Load a dynamically linked shared library.  */
+  BFD_MACH_O_LC_ID_DYLIB = 0xd,                /* Dynamically linked shared lib identification.  */
+  BFD_MACH_O_LC_LOAD_DYLINKER = 0xe,   /* Load a dynamic linker.  */
+  BFD_MACH_O_LC_ID_DYLINKER = 0xf,     /* Dynamic linker identification.  */
+  BFD_MACH_O_LC_PREBOUND_DYLIB = 0x10, /* Modules prebound for a dynamically.  */
+  BFD_MACH_O_LC_ROUTINES = 0x11,       /* Image routines.  */
+  BFD_MACH_O_LC_SUB_FRAMEWORK = 0x12,  /* Sub framework.  */
+  BFD_MACH_O_LC_SUB_UMBRELLA = 0x13,   /* Sub umbrella.  */
+  BFD_MACH_O_LC_SUB_CLIENT = 0x14,     /* Sub client.  */
+  BFD_MACH_O_LC_SUB_LIBRARY = 0x15,    /* Sub library.  */
+  BFD_MACH_O_LC_TWOLEVEL_HINTS = 0x16, /* Two-level namespace lookup hints.  */
+  BFD_MACH_O_LC_PREBIND_CKSUM = 0x17,  /* Prebind checksum.  */
+  /* Load a dynamically linked shared library that is allowed to be
        missing (weak).  */
-    BFD_MACH_O_LC_LOAD_WEAK_DYLIB = 0x18
-  }
+  BFD_MACH_O_LC_LOAD_WEAK_DYLIB = 0x18
+}
 bfd_mach_o_load_command_type;
 
 typedef enum bfd_mach_o_cpu_type
-  {
-    BFD_MACH_O_CPU_TYPE_VAX = 1,
-    BFD_MACH_O_CPU_TYPE_MC680x0 = 6,
-    BFD_MACH_O_CPU_TYPE_I386 = 7,
-    BFD_MACH_O_CPU_TYPE_MIPS = 8,
-    BFD_MACH_O_CPU_TYPE_MC98000 = 10,
-    BFD_MACH_O_CPU_TYPE_HPPA = 11,
-    BFD_MACH_O_CPU_TYPE_ARM = 12,
-    BFD_MACH_O_CPU_TYPE_MC88000 = 13,
-    BFD_MACH_O_CPU_TYPE_SPARC = 14,
-    BFD_MACH_O_CPU_TYPE_I860 = 15,
-    BFD_MACH_O_CPU_TYPE_ALPHA = 16,
-    BFD_MACH_O_CPU_TYPE_POWERPC = 18
-  }
+{
+  BFD_MACH_O_CPU_TYPE_VAX = 1,
+  BFD_MACH_O_CPU_TYPE_MC680x0 = 6,
+  BFD_MACH_O_CPU_TYPE_I386 = 7,
+  BFD_MACH_O_CPU_TYPE_MIPS = 8,
+  BFD_MACH_O_CPU_TYPE_MC98000 = 10,
+  BFD_MACH_O_CPU_TYPE_HPPA = 11,
+  BFD_MACH_O_CPU_TYPE_ARM = 12,
+  BFD_MACH_O_CPU_TYPE_MC88000 = 13,
+  BFD_MACH_O_CPU_TYPE_SPARC = 14,
+  BFD_MACH_O_CPU_TYPE_I860 = 15,
+  BFD_MACH_O_CPU_TYPE_ALPHA = 16,
+  BFD_MACH_O_CPU_TYPE_POWERPC = 18
+}
 bfd_mach_o_cpu_type;
 
 typedef enum bfd_mach_o_filetype
-  {
-    BFD_MACH_O_MH_OBJECT = 1,
-    BFD_MACH_O_MH_EXECUTE = 2,
-    BFD_MACH_O_MH_FVMLIB = 3,
-    BFD_MACH_O_MH_CORE = 4,
-    BFD_MACH_O_MH_PRELOAD = 5,
-    BFD_MACH_O_MH_DYLIB = 6,
-    BFD_MACH_O_MH_DYLINKER = 7,
-    BFD_MACH_O_MH_BUNDLE = 8
-  }
+{
+  BFD_MACH_O_MH_OBJECT = 1,
+  BFD_MACH_O_MH_EXECUTE = 2,
+  BFD_MACH_O_MH_FVMLIB = 3,
+  BFD_MACH_O_MH_CORE = 4,
+  BFD_MACH_O_MH_PRELOAD = 5,
+  BFD_MACH_O_MH_DYLIB = 6,
+  BFD_MACH_O_MH_DYLINKER = 7,
+  BFD_MACH_O_MH_BUNDLE = 8
+}
 bfd_mach_o_filetype;
 
 /* Constants for the type of a section.  */
 
 typedef enum bfd_mach_o_section_type
-  {
-    /* Regular section.  */
-    BFD_MACH_O_S_REGULAR = 0x0,
+{
+  /* Regular section.  */
+  BFD_MACH_O_S_REGULAR = 0x0,
 
-    /* Zero fill on demand section.  */
-    BFD_MACH_O_S_ZEROFILL = 0x1,
+  /* Zero fill on demand section.  */
+  BFD_MACH_O_S_ZEROFILL = 0x1,
 
-    /* Section with only literal C strings.  */
-    BFD_MACH_O_S_CSTRING_LITERALS = 0x2,
+  /* Section with only literal C strings.  */
+  BFD_MACH_O_S_CSTRING_LITERALS = 0x2,
 
-    /* Section with only 4 byte literals.  */
-    BFD_MACH_O_S_4BYTE_LITERALS = 0x3,
+  /* Section with only 4 byte literals.  */
+  BFD_MACH_O_S_4BYTE_LITERALS = 0x3,
 
-    /* Section with only 8 byte literals.  */
-    BFD_MACH_O_S_8BYTE_LITERALS = 0x4,
+  /* Section with only 8 byte literals.  */
+  BFD_MACH_O_S_8BYTE_LITERALS = 0x4,
 
-    /* Section with only pointers to literals.  */
-    BFD_MACH_O_S_LITERAL_POINTERS = 0x5,
+  /* Section with only pointers to literals.  */
+  BFD_MACH_O_S_LITERAL_POINTERS = 0x5,
 
-    /* For the two types of symbol pointers sections and the symbol stubs
-       section they have indirect symbol table entries.  For each of the
-       entries in the section the indirect symbol table entries, in
-       corresponding order in the indirect symbol table, start at the index
-       stored in the reserved1 field of the section structure.  Since the
-       indirect symbol table entries correspond to the entries in the
-       section the number of indirect symbol table entries is inferred from
-       the size of the section divided by the size of the entries in the
-       section.  For symbol pointers sections the size of the entries in
-       the section is 4 bytes and for symbol stubs sections the byte size
-       of the stubs is stored in the reserved2 field of the section
-       structure.  */
+  /* For the two types of symbol pointers sections and the symbol stubs
+     section they have indirect symbol table entries.  For each of the
+     entries in the section the indirect symbol table entries, in
+     corresponding order in the indirect symbol table, start at the index
+     stored in the reserved1 field of the section structure.  Since the
+     indirect symbol table entries correspond to the entries in the
+     section the number of indirect symbol table entries is inferred from
+     the size of the section divided by the size of the entries in the
+     section.  For symbol pointers sections the size of the entries in
+     the section is 4 bytes and for symbol stubs sections the byte size
+     of the stubs is stored in the reserved2 field of the section
+     structure.  */
 
-    /* Section with only non-lazy symbol pointers.  */
-    BFD_MACH_O_S_NON_LAZY_SYMBOL_POINTERS = 0x6,
+  /* Section with only non-lazy symbol pointers.  */
+  BFD_MACH_O_S_NON_LAZY_SYMBOL_POINTERS = 0x6,
 
-    /* Section with only lazy symbol pointers.  */
-    BFD_MACH_O_S_LAZY_SYMBOL_POINTERS = 0x7,
+  /* Section with only lazy symbol pointers.  */
+  BFD_MACH_O_S_LAZY_SYMBOL_POINTERS = 0x7,
 
-    /* Section with only symbol stubs, byte size of stub in the reserved2 field.  */
-    BFD_MACH_O_S_SYMBOL_STUBS = 0x8,
+  /* Section with only symbol stubs, byte size of stub in the reserved2 field.  */
+  BFD_MACH_O_S_SYMBOL_STUBS = 0x8,
 
-    /* Section with only function pointers for initialization.  */
-    BFD_MACH_O_S_MOD_INIT_FUNC_POINTERS = 0x9
-  }
+  /* Section with only function pointers for initialization.  */
+  BFD_MACH_O_S_MOD_INIT_FUNC_POINTERS = 0x9
+}
 bfd_mach_o_section_type;
 
 typedef unsigned long bfd_mach_o_cpu_subtype;
@@ -463,46 +463,25 @@ mach_o_data_struct;
 
 typedef struct mach_o_data_struct bfd_mach_o_data_struct;
 
-bfd_boolean bfd_mach_o_valid
-  PARAMS ((bfd *));
-int bfd_mach_o_scan_read_symtab_symbol
-  PARAMS ((bfd *, bfd_mach_o_symtab_command *, asymbol *, unsigned long));
-int bfd_mach_o_scan_read_symtab_strtab
-  PARAMS ((bfd *, bfd_mach_o_symtab_command *));
-int bfd_mach_o_scan_read_symtab_symbols
-  PARAMS ((bfd *, bfd_mach_o_symtab_command *));
-int bfd_mach_o_scan_read_dysymtab_symbol
-  PARAMS ((bfd *, bfd_mach_o_dysymtab_command *, bfd_mach_o_symtab_command *,
-          asymbol *, unsigned long));
-int bfd_mach_o_scan_start_address
-  PARAMS ((bfd *));
-int bfd_mach_o_scan
-  PARAMS ((bfd *, bfd_mach_o_header *, bfd_mach_o_data_struct *));
-bfd_boolean bfd_mach_o_mkobject
-  PARAMS ((bfd *));
-const bfd_target * bfd_mach_o_object_p
-  PARAMS ((bfd *));
-const bfd_target * bfd_mach_o_core_p
-  PARAMS ((bfd *));
-const bfd_target * bfd_mach_o_archive_p
-  PARAMS ((bfd *));
-bfd * bfd_mach_o_openr_next_archived_file
-  PARAMS ((bfd *, bfd *));
-int bfd_mach_o_lookup_section
-  PARAMS ((bfd *, asection *, bfd_mach_o_load_command **,
-          bfd_mach_o_section **));
-int bfd_mach_o_lookup_command
-  PARAMS ((bfd *, bfd_mach_o_load_command_type, bfd_mach_o_load_command **));
-unsigned long bfd_mach_o_stack_addr
-  PARAMS ((enum bfd_mach_o_cpu_type));
-int bfd_mach_o_core_fetch_environment
-  PARAMS ((bfd *, unsigned char **, unsigned int *));
-char * bfd_mach_o_core_file_failing_command
-  PARAMS ((bfd *));
-int bfd_mach_o_core_file_failing_signal
-  PARAMS ((bfd *));
-bfd_boolean bfd_mach_o_core_file_matches_executable_p
-  PARAMS ((bfd *, bfd *));
+bfd_boolean        bfd_mach_o_valid  (bfd *);
+int                bfd_mach_o_scan_read_symtab_symbol        (bfd *, bfd_mach_o_symtab_command *, asymbol *, unsigned long);
+int                bfd_mach_o_scan_read_symtab_strtab        (bfd *, bfd_mach_o_symtab_command *);
+int                bfd_mach_o_scan_read_symtab_symbols       (bfd *, bfd_mach_o_symtab_command *);
+int                bfd_mach_o_scan_read_dysymtab_symbol      (bfd *, bfd_mach_o_dysymtab_command *, bfd_mach_o_symtab_command *, asymbol *, unsigned long);
+int                bfd_mach_o_scan_start_address             (bfd *);
+int                bfd_mach_o_scan                           (bfd *, bfd_mach_o_header *, bfd_mach_o_data_struct *);
+bfd_boolean        bfd_mach_o_mkobject                       (bfd *);
+const bfd_target * bfd_mach_o_object_p                       (bfd *);
+const bfd_target * bfd_mach_o_core_p                         (bfd *);
+const bfd_target * bfd_mach_o_archive_p                      (bfd *);
+bfd *              bfd_mach_o_openr_next_archived_file       (bfd *, bfd *);
+int                bfd_mach_o_lookup_section                 (bfd *, asection *, bfd_mach_o_load_command **, bfd_mach_o_section **);
+int                bfd_mach_o_lookup_command                 (bfd *, bfd_mach_o_load_command_type, bfd_mach_o_load_command **);
+unsigned long      bfd_mach_o_stack_addr                     (enum bfd_mach_o_cpu_type);
+int                bfd_mach_o_core_fetch_environment         (bfd *, unsigned char **, unsigned int *);
+char *             bfd_mach_o_core_file_failing_command      (bfd *);
+int                bfd_mach_o_core_file_failing_signal       (bfd *);
+bfd_boolean        bfd_mach_o_core_file_matches_executable_p (bfd *, bfd *);
 
 extern const bfd_target mach_o_be_vec;
 extern const bfd_target mach_o_le_vec;