Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.

win32 and em64t ivf modules

g_f_thomas
Beginner
292 Views

I notice that there are differences between win32 and em64t ivf modules. For example, if ctxptr is of type T_CONTEXT,ctxptr%FLOATSAVE%STATUSWORD is valid in win32but not so in em64t. How does one get around this? and are these differences docummented?

Gerry

0 Kudos
5 Replies
Steven_L_Intel1
Employee
292 Views
It looks to me as if Microsoft defines this structure differently on the two architectures, which I do not find surprising. Anything you're doing in this area is architecture-specific, so you need to conditionalize appropriately.
0 Kudos
g_f_thomas
Beginner
292 Views

So much for single code base propaganda. I takeit that the differences between the ivf win32 and em64t modules haven't been documented.

Gerry

0 Kudos
Steven_L_Intel1
Employee
292 Views
Eh? I assume Microsoft documents this - it is their data structure.

As for single code base, when you start writing code that is explicit to an architecture, you'll run into issues. A normal Fortran program, properly written, should not see an architecture dependency.
0 Kudos
g_f_thomas
Beginner
292 Views

MADsblionel:
Eh? I assume Microsoft documents this - it is their data structure.

My query relates to Intel modules providing interfaces to Microsoft API. The IVF modules are a mess compared to the Microsoft header files.


MADsblionel:
As for single code base, when you start writing code that is explicit to an architecture, you'll run into issues. A normal Fortran program, properly written, should not see an architecture dependency.

Yes I agree, IVF is not for writing normal Fortran programs for commodity chips, eh!

Gerry

0 Kudos
Steven_L_Intel1
Employee
292 Views
Gerry,

If you have identified an incompatibility between definitions in the Win32 modules and those provided by MSVC, please elaborate and we'll be glad to take a look. I am "on the road" this week and can't study this issue in depth right now, but from what I can see the MSVC definitions also differ by architecture.

I am somewhat puzzled at your assumption that code designed to read hardware registers can be made to be platform independent. Please enlighten me.
0 Kudos
Reply