No. I am using amd64.
Which is really obvious from the register usage in the program.

Program prints first two strings directly.
But it does not print the third string (1st array string).

And debugging says why.
The address of msg1 and msg2 is not stored correctly in the array.
So when I access the address of msg1 from the array:
movq array (%rip), %rsi
it is NOT the address of msg1.

I dont know if it is a linker problem?
I could kind of do "manual relocation" of sorts to manually
correct the addresses put in the array.
But what would be the OpenBSD correct way to
write such simple print-from-the-array-of-strings program?

> Does not work how? Are you using i386?

Reply via email to