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

Integer*8 Arithmetic

Gerald_R_
Beginner
515 Views

I'm using Intel Fortran XE 2013 SP1 to modify an existing Fortran code (under Windows 7).

I'm 'upgrading' some of the INTEGERs to INTEGER*8 (from *4), but I'm then having problems with some of the arithmetic of the *8 integers.

Adding/subtracting the *8 integers all works OK, but when multiplying causes the program to 'fall-over' (I'm running it under Debug).  These particular integers all have fairly small values (<100), so cannot be an overflow problem.  (I'm not mixing *8 with *4).

Could there be a problem with Project Properties - what could be causing this ?

Thanks,

Gerald Reeves.

 

0 Kudos
5 Replies
mecej4
Honored Contributor III
515 Views

I think that you need to provide more details of the circumstances. Complete example code would help.

What do you mean by "fall-over"? Are you compiling for IA-32 or X64? Surely, you are not claiming that multiplying any two 8-byte integers causes a problem?

0 Kudos
Gerald_R_
Beginner
515 Views

Thanks for the reply  -   its seems that I don't really have a problem when I thought I did.

I was using 'F11' to step into the integer*8 arithmetic/calculations when under Debug.  However, for multiplication (and division), F11 'drilled into' the assembler dialog tab when using integer*8.

I've never seen this before for integer*4 calculations and I assumed there was a problem ?  Apparently not; stepping-out (shift-F11) just continues the execution of the code with the correct values.

GR.

0 Kudos
TimP
Honored Contributor III
515 Views

As 32 bit mode doesn't include simple 64 bit integer operations, some may be implemented as library function calls.

0 Kudos
mecej4
Honored Contributor III
515 Views

If you are going to run programs containing 64-bit integers in the debugger, it is probably best to compile for X64 to avoid the distraction of falling into assembly routines when doing "Step-In". 

0 Kudos
Gerald_R_
Beginner
515 Views

Thank you all for the useful replies

    -    Yes, I am using the 32bit compiler option.   Will certainly consider the 64 bit compiler if I have to do much more of this !

GR.

 

0 Kudos
Reply