inlining messages of the ipo facility

inlining messages of the ipo facility

Hey,

what do the annotations like "exp(EXTERN)" or "log(EXTERN)" showing up in inlining reports generated by the IPO facility
(when using the command line option -opt-report[n]) exactly mean?
Do this messages inform me about the fact that the compiler decides not to implement the intrinsic versions of the
(d)exp and (d/a)log function but chooses instead the (d)exp and (d)log function from libm?
How can I however instruct the compiler to make use of the intrinsic versions of the exp and log functions from libimf?

Even stating the choice of the intrinsic version of the log/exp functions within the specification part of the calling function
(e. g. by stating intrinsic :: exp), did not make the above cited labelling of the exp and log functions as extern functions
disappear?

Cheers, Sebastian.

3 posts / novo 0
Último post
Para obter mais informações sobre otimizações de compiladores, consulte Aviso sobre otimizações.

I think your question is confusing. From the Fortran point of view, exp and log functions provided by the compiler are intrinsic no matter how it is done. libimf or libsvml functions will be needed anyway to implement for any architecture setting other than 32-bit -mia32.

Hey Tim,

all I wanted to know about is the true meaning of the word "EXTERN" printed in compiler inlining reports like the following:

INLINING REPORT: (prodrates_) [2/3=66.7%]

-> omp_get_wtime(EXTERN)
-> exp(EXTERN)
-> log(EXTERN)

Now I got the clue about the true meaning of the word "EXTERN" printed within reports like the one cited above:
Cause the functions like exp and log are called from within the compiler libraries they are "extern functions" in the sense of external C functions. ;-)

Thanks for your help, Sebastian.

Deixar um comentário

Faça login para adicionar um comentário. Não é membro? Inscreva-se hoje mesmo!