flat assembler
Message board for the users of flat assembler.
Index
> Main > flat assembler 1.73.05-06 |
Author |
|
Tomasz Grysztar 03 Jan 2019, 21:08
This new release brings a modification to ELF executable formatter, to fulfill new assumptions made by some Linux implementations. It is something that I first implemented as an option in formatting macros for fasmg, but I have finally managed to navigate the messy sources of fasm's formatter and implement the same mechanisms there.
The difference in new implementation is that ELF headers and segments marked as "interpreter" or "dynamic" are included in memory mapping of the nearest PT_LOAD segment that follows them. This makes them accessible to ELF loader implementations that assume that all structures they need have been loaded into memory while mapping the segments. Note that attributes like "readable" of "interpreter" or "dynamic" segment do not apply, only the attributes of regular segment that follows matter. Generally this is something that does not really hurt (for example, the executable size stays the same, memory usage is also usually not affected because of how aligment works) and at the same time it makes ELF executables produced by fasm work correctly in more environments. In ELF formatting macros for fasmg the ELF.Settings.LoadHeaders option is now enabled by default, but it is still possible to turn it off and emulate the old behavior of fasm 1 if anyone needs it for any reason. |
|||
03 Jan 2019, 21:08 |
|
Tomasz Grysztar 04 Jan 2019, 10:35
Another update today. In addition to fixing a small bug in the new ELF executable formatter I have also added UD0 and UD1 instructions. Turns out they are now officially documented by Intel as "r32,r/m32" variant.
On the other hand SALC remains undocumented.
|
||||||||||
04 Jan 2019, 10:35 |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.