aboutsummaryrefslogtreecommitdiff
path: root/backends/plugins/elf/elf-loader.cpp
AgeCommit message (Collapse)Author
2010-11-05PLUGINS: Simplify ELF plugin providers & DLObject subclassesMax Horn
* Remove DLObject virtual methods allocSegment and freeSegment. As long as all DLObject implementations use memalign + free to allocate/release segments, there is no point in wrapping those. This enables further simplifications. * Add TemplatedELFPlugin template class. Use this instead of explicit ELFPlugin subclasses. * Rename DLObject::discard_symtab to discardSymtab svn-id: r54082
2010-11-04COMMON: Undo changes to common/ptr.h, remove Common::ScopedPtrCMax Horn
The deletePointer() method approach cannot work, as it is called by the destructor of the base class. A possible correct solution would be to enhance ScopedPtr with a "deleter" object like SharedPtr. But this seems overkill as long as we need it in only one place. svn-id: r54057
2010-10-31Updated with latest from trunkYotam Barnoy
svn-id: r53976
2010-09-15PLUGINS: Cleanup.Andre Heider
- Unify ELF loader handling in configure - Rename ELF_LOADER_TARGET to USE_ELF_LOADER svn-id: r52728
2010-09-06PLUGINS: used variation of ScopedPtr to clean up load() functionYotam Barnoy
svn-id: r52592
2010-09-06PLUGINS: fixed MIPS plugin loaderYotam Barnoy
Adjusted to new VMA handling and fixed a few errors which caused crashes. Also removed unneeded expansion of alignment value. svn-id: r52589
2010-09-05PLUGINS: Remove spurious extra allocation.Andre Heider
Elf32_Phdr.p_align is to align the memory location of the loaded segment, not to extend its size. The size of the scratch area (like .bss and .sbss) is p_memsz-p_filesz, which has to be set to zero by the loader. svn-id: r52576
2010-09-05PLUGINS: Plug some memleaks.Andre Heider
svn-id: r52575
2010-09-05PLUGINS: Add missing variable initialization.Andre Heider
svn-id: r52573
2010-09-05PLUGINS: Formatting.Andre Heider
Misformatted casts in an earier commit, oops. svn-id: r52572
2010-09-05PLUGINS: Make the file stream a member of DLObject.Andre Heider
No point in passing it to functions all over the place. Release the stream when it's not required anymore. svn-id: r52558
2010-09-05PLUGINS: Type cleanup.Andre Heider
Use our types, get rid of some casts. svn-id: r52557
2010-09-05PLUGINS: Move platform specific code out of the generic ELF loader.Andre Heider
Instead overwrite pure virtual functions in a backend specific class. svn-id: r52556
2010-09-05PLUGINS: Move all ELF loader related files to its own directory.Andre Heider
svn-id: r52555