Community
cancel
Showing results for 
Search instead for 
Did you mean: 
srimks
New Contributor II
54 Views

Function declaration parameters - asm.

Hello,

For below HLL source code function declaration -

void apple( const State now,
Real crd[MAX_ATOMS][SPACE],
const Real v[MAX_TORS][SPACE],
const int tlist[MAX_TORS][MAX_ATOMS],
const int ntor )
--

The ICC-v11.0 assembly for above function declaration is as below -
----
# parameter 1(now): 112 + %rsp
# parameter 2(crd): %rdi
# parameter 3(v): %rsi
# parameter 4(tlist): %rdx
# parameter 5(ntor): %ecx----

Now, how do I represent above asm parameters as shown by assembly file as above in user defined Inline SSE assembly?

Can I have some Intel C++ Compiler references/documents which discuss, how to interpret, analyze and write Inline SSE assembly code for IA-64 on Linux x86_64?

~BR
0 Kudos
2 Replies
neni
New Contributor II
54 Views

It's not clear exactly what you are trying to do. The parametrs passing, which registers to use etc are being defined by the ABI (application binary interface), which is different between OS (and calling conventions, etc). For inline asm, the C symbols are accesible from within the inline asm block (in most case, the compiler will dump them from registers to their designated stack location and load them from the stack). If all you want is basic SSE functionality you might consider using compiler intrinsics over inline asm

srimks
New Contributor II
54 Views

Quoting - neni

It's not clear exactly what you are trying to do. The parametrs passing, which registers to use etc are being defined by the ABI (application binary interface), which is different between OS (and calling conventions, etc). For inline asm, the C symbols are accesible from within the inline asm block (in most case, the compiler will dump them from registers to their designated stack location and load them from the stack). If all you want is basic SSE functionality you might consider using compiler intrinsics over inline asm

Sorry, for asking this questions. I think I am done. Thanks for your inputs.

~BR
Reply