Major cleanup of ElfLinker.

This commit is contained in:
Markus F.X.J. Oberhumer
2006-11-12 10:57:18 +01:00
parent 6e763b0b42
commit a74e239e28
4 changed files with 217 additions and 155 deletions
+5 -3
View File
@@ -206,14 +206,16 @@ protected:
virtual int buildLoader(const Filter *ft) = 0;
virtual Linker* newLinker() const = 0;
// loader util for linker
virtual void freezeLoader();
void freezeLoader() { }
virtual upx_byte *getLoader() const;
virtual int getLoaderSize() const;
virtual void initLoader(const void *pdata, int plen, int small=-1);
#if 1 && (ACC_CC_GNUC >= 0x040100)
virtual void __acc_cdecl_va addLoader(const char *s, ...) __attribute__((__sentinel__));
virtual void addLoader(const char *);
virtual void __acc_cdecl_va addLoader(const char *, ...) __attribute__((__sentinel__));
#else
virtual void __acc_cdecl_va addLoader(const char *s, ...);
virtual void addLoader(const char *);
virtual void __acc_cdecl_va addLoader(const char *, ...);
#endif
virtual int getLoaderSection(const char *name, int *slen=NULL) const;
virtual int getLoaderSectionStart(const char *name, int *slen=NULL) const;