Operating System - HP-UX
1846324 Members
3369 Online
110256 Solutions
New Discussion

Location of __mf() definition

 
johnsonjthomas
Frequent Advisor

Location of __mf() definition

Hi,

I am porting TBB 2.2 to HPUX Itanium platform. I have a macro __TBB_rel_acq_fence (hardware fencing) which is defined as the mf instruction on IA64 platform.

By default __mf is defined in the file ia64intrin.h, but when I checked this file, it says
"Overloaded builtins have been ported to C++: nothing is needed in the header anymore.This file intentionally left void."

Can anybody tell me the location of the __mf() definition?

Any help would be great.

Thanks,
Johnson
4 REPLIES 4
johnsonjthomas
Frequent Advisor

Re: Location of __mf() definition

I am using aC++ compiler (eval version).In my previous post, I have assumed that __mf() is the intrinsic for the mf instruction on IA64. I dont know whether this is right.

Could anyone tell me whether is this right or wrong, or what is the equivalent aC++ intrinsic for mf instruction on IA64?

Thanks,
Johnson
Dennis Handly
Acclaimed Contributor

Re: Location of __mf() definition

How to use inline assembly is here:
http://h21007.www2.hp.com/portal/site/dspp/menuitem.863c3e4cbcdc3f3515b49c108973a801/?ciid=4308e2f5bde02110e2f5bde02110275d6e10RCRD
void _Asm_mf([_Asm_fence]);

Where you can default the _Asm_fence arg.
You will need to do:
#include
johnsonjthomas
Frequent Advisor

Re: Location of __mf() definition

Thanks a lot Dennis, it worked.
Dennis Handly
Acclaimed Contributor

Re: Location of __mf() definition

>Thanks a lot

If you are happy with the answers you got, please read the following about how to assign points:
http://forums.itrc.hp.com/service/forums/helptips.do?#33