![]() |
|
|
#23 |
|
Sep 2002
2·331 Posts |
How was the MASM code used before for linux ?
The object files it could make were COFF format or some other format (? CV ?). What compiler, linker was used ? |
|
|
|
|
|
#24 |
|
Apr 2003
Berlin, Germany
5518 Posts |
I read in the makefiles that masm was used with options /c and /coff.
Unfortunately the latter one doesn't work for MASM 8.0. I tried it with gcc 3.3 objcopy (x86-64 version) doesn't recognize the MASM 8.0 obj file. |
|
|
|
|
|
#25 |
|
P90 years forever!
Aug 2002
Yeehaw, FL
17×487 Posts |
Have you looked in the binutils config file to see if there is an entry for the new MASM object file format? (It sure would be nice if Microsoft told us what that format is!)
|
|
|
|
|
|
#26 | |
|
Apr 2003
Berlin, Germany
192 Posts |
Quote:
I compared an obj file of MASM 7 with the one of MASM 8. They look very similar (path names, code and other things at the same locations) - only several section names like "_TEXT32" have changed. In some binutils source for IA64 they mention COFF_WITH_PEP64. Maybe the file format for AMD64 is very similiar. |
|
|
|
|
|
|
#27 |
|
Apr 2003
Berlin, Germany
192 Posts |
I'm currently downloading the whole Windows Platform SDK in the hope to get some detailed information about the new COFF/PE+ (or PE32+) formats.
Because I don't know if there will be some success in being able to convert ML64 generated obj files to some elf64 format, I'll also look into the possibility to make some small script which translates the assembly sources. It would even be possible to handle some cases where instructions or special instruction formats aren't supported in 64bit mode. And the final output could be edited and assembled more quickly than always having to convert the obj. files. |
|
|
|
|
|
#28 |
|
Apr 2003
Berlin, Germany
192 Posts |
That's what I found in some Intel documentation:
New Portable Executable File Format (PE32+): Win64* executables are almost identical to Win32* PE files, a few fields widened to 64 bit: –Image Base, Stack and Heap sizes, Import Address Table entries So it looks like only these widened fields (and some format ID bytes) changed. That's all what is preventing us from doing the conversion. It should be easily possible to change bfd to understand the new format. Some IA64 support is included but as I read somewhere else, it is just rudimentary support. |
|
|
|
|
|
#29 |
|
Mar 2003
24 Posts |
If you are looking for an assembler, there is YASM (http://www.tortall.net/projects/yasm/) too.
I have never ever written any Intel machine code, so I don't know if the feature list of that fits the bill. At least it has AMD64 support and a few different object files output options. |
|
|
|
|
|
#30 |
|
Apr 2003
Berlin, Germany
36110 Posts |
I've already planned to have a look at it when I find the time. Actually the most important feature besides AMD64 capabilities is to have similar possibilities of macro usage like in MASM.
As I read, NASM will also support AMD64 code some day and AMD internally already uses a modified NASM which knows the AMD64 ISA extensions. |
|
|
|
|
|
#31 |
|
P90 years forever!
Aug 2002
Yeehaw, FL
17×487 Posts |
I asked on the binutils mailing list if there would be support for MASM 8.0 object files. The answer was: "Yes - when someone submits acceptable code for it".
|
|
|
|
|
|
#32 |
|
Apr 2003
Berlin, Germany
36110 Posts |
It seems, that we have to submit that code.
With the info I found about PE+/PE32+ it should be possible to convert that format into others. But then I have to find out how to include it in bfd. |
|
|
|
![]() |
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| The bandwidth bottleneck is apparently much older than I thought | Dubslow | Hardware | 5 | 2017-11-16 19:50 |
| Opteron is Hyperthreaded ? | bgbeuning | Information & Answers | 3 | 2016-01-10 08:26 |
| Modular Inversion Bottleneck | Sam Kennedy | Programming | 4 | 2013-01-25 16:50 |
| AMD Athlon 64 vs AMD Opteron for ecm | thomasn | Factoring | 6 | 2004-11-08 13:25 |
| AMD Opteron | naclosagc | Software | 27 | 2003-08-10 19:14 |