Hi Peter,
Thank you for responding to my questions.
I haven't tried dissassembling the code yet. I know that there is this gnu tool
called nm or objdump, but I don't know the name of the corresponding solaris
tools. Or, maybe it is possible to use the gnu tools on these binaries as well?
Anyhow, I'll give it a try...
Thank you for the tip regarding the C++ compiler, I'll see if I can specify the
compiler somewhere in the setup process. I'm using the bldenv tool to do this
together with an opensolaris.sh file, can't see any compiler directives there.
But I'll look into this...
I heard that there might be a compability issue to compile opensolaris 5.11
build 57, with a studio 12 compiler, but it would be great if it worked.
In the GCC-style macro I specified g1 and g2 in the clobber list which should
inform the compiler that I want to use this registers. I don't know how to do
this using the studio compiler.
I solved my problem (temporarely) with a function definition in C. So, now I
have defined
void magic_ql_c(int n, int ql, int id)
{
MAGIC(n)
}
So basically, I'm putting the second and third argument in registers i1 and i2
and the MAGIC macro is a single line of assembler (sethi #n, g0). This achieves
the objective I had, which was to pass the arguments to specific registers that
can be read when the MAGIC instruction triggers the simulator I'm using. The
only difference is that this solution uses i registers instead of g, but that's
ok. Another benefit is that I don't have to worry that the registers are
already used by the compiler since the i registers are dedicated for this
specific purpose.
Thanks agian.
Regards,
Mladen
--
This message posted from opensolaris.org