- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I have noticed that the Fortran compiler can compile the assembler files it can generate with the output assembler options. This is also true if these files are modified. This leads to the following questions:
1. Is inline assembler a possibility with the Fortran compiler and, in case, what is the syntax?
2. It seems that in .asm files SSE3 instructions like haddpd xmm0, xmm1 are not reckognised. Why?
Michael
1. Is inline assembler a possibility with the Fortran compiler and, in case, what is the syntax?
2. It seems that in .asm files SSE3 instructions like haddpd xmm0, xmm1 are not reckognised. Why?
Michael
Link Copied
4 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The Intel Fortran compiler cannot process assembler files. It does have the ability to generate them, and you can build them with the Microsoft Assembler (MASM). Visual Studio knows how to invoke MASM, so if you have it installed, then this may explain your belief that the Fortran compiler understands them.
Intel Fortran does not support inline assembler. If you really want to do this sort of thing, Intel C++ supports intrinsics for many SSE instructions.
You would need a MASM that was updated to support SSE3. I believe that this is a free download for Visual Studio users from Microsoft.
Intel Fortran does not support inline assembler. If you really want to do this sort of thing, Intel C++ supports intrinsics for many SSE instructions.
You would need a MASM that was updated to support SSE3. I believe that this is a free download for Visual Studio users from Microsoft.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
It does a good job of making me believe it can, then.
I do have visual studio installed (as required), but I do all work from the command line, involving the compiler with IFORTVARS.BAT
IFORT -c vv.asm
produces the ifort message, continues with
assembling vv.asm
and produces the compiled file.
Anyhow, I shall check up on MASM to see if a SSE3 update is available.
Michael
I do have visual studio installed (as required), but I do all work from the command line, involving the compiler with IFORTVARS.BAT
IFORT -c vv.asm
produces the ifort message, continues with
assembling vv.asm
and produces the compiled file.
Anyhow, I shall check up on MASM to see if a SSE3 update is available.
Michael
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
If you add /watch to the ifort command line, you'll see that it invokes ml to "compile" the .asm file.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks, I shall remember that. And, in addition, a macro found somewhere on the Intel website provided me with the SSE3-instructions the current version of MASM was missing. So, thank you for the help.
Michael
Michael

Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page