object_file.hh (9641:2285b98847d7) object_file.hh (10037:5cac77888310)
1/*
2 * Copyright (c) 2002-2004 The Regents of The University of Michigan
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

--- 38 unchanged lines hidden (view full) ---

47 enum Arch {
48 UnknownArch,
49 Alpha,
50 SPARC64,
51 SPARC32,
52 Mips,
53 X86_64,
54 I386,
1/*
2 * Copyright (c) 2002-2004 The Regents of The University of Michigan
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

--- 38 unchanged lines hidden (view full) ---

47 enum Arch {
48 UnknownArch,
49 Alpha,
50 SPARC64,
51 SPARC32,
52 Mips,
53 X86_64,
54 I386,
55 Arm64,
55 Arm,
56 Thumb,
57 Power
58 };
59
60 enum OpSys {
61 UnknownOpSys,
62 Tru64,

--- 16 unchanged lines hidden (view full) ---

79 Arch _arch, OpSys _opSys);
80
81 public:
82 virtual ~ObjectFile();
83
84 void close();
85
86 virtual bool loadSections(PortProxy& memProxy, Addr addrMask =
56 Arm,
57 Thumb,
58 Power
59 };
60
61 enum OpSys {
62 UnknownOpSys,
63 Tru64,

--- 16 unchanged lines hidden (view full) ---

80 Arch _arch, OpSys _opSys);
81
82 public:
83 virtual ~ObjectFile();
84
85 void close();
86
87 virtual bool loadSections(PortProxy& memProxy, Addr addrMask =
87 std::numeric_limits<Addr>::max());
88 std::numeric_limits<Addr>::max(),
89 Addr offset = 0);
88 virtual bool loadGlobalSymbols(SymbolTable *symtab, Addr addrMask =
89 std::numeric_limits<Addr>::max()) = 0;
90 virtual bool loadLocalSymbols(SymbolTable *symtab, Addr addrMask =
91 std::numeric_limits<Addr>::max()) = 0;
92 virtual bool loadWeakSymbols(SymbolTable *symtab, Addr addrMask =
93 std::numeric_limits<Addr>::max())
94 { return false; }
95

--- 13 unchanged lines hidden (view full) ---

109
110 Addr entry;
111 Addr globalPtr;
112
113 Section text;
114 Section data;
115 Section bss;
116
90 virtual bool loadGlobalSymbols(SymbolTable *symtab, Addr addrMask =
91 std::numeric_limits<Addr>::max()) = 0;
92 virtual bool loadLocalSymbols(SymbolTable *symtab, Addr addrMask =
93 std::numeric_limits<Addr>::max()) = 0;
94 virtual bool loadWeakSymbols(SymbolTable *symtab, Addr addrMask =
95 std::numeric_limits<Addr>::max())
96 { return false; }
97

--- 13 unchanged lines hidden (view full) ---

111
112 Addr entry;
113 Addr globalPtr;
114
115 Section text;
116 Section data;
117 Section bss;
118
117 bool loadSection(Section *sec, PortProxy& memProxy, Addr addrMask);
119 bool loadSection(Section *sec, PortProxy& memProxy, Addr addrMask,
120 Addr offset = 0);
118 void setGlobalPointer(Addr global_ptr) { globalPtr = global_ptr; }
119
120 public:
121 Addr entryPoint() const { return entry; }
122
123 Addr globalPointer() const { return globalPtr; }
124
125 Addr textBase() const { return text.baseAddr; }

--- 19 unchanged lines hidden ---
121 void setGlobalPointer(Addr global_ptr) { globalPtr = global_ptr; }
122
123 public:
124 Addr entryPoint() const { return entry; }
125
126 Addr globalPointer() const { return globalPtr; }
127
128 Addr textBase() const { return text.baseAddr; }

--- 19 unchanged lines hidden ---