NetBSD-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Assembly example (nasm) for amd64 in NetBSD



On apr 14  8:40, RVP wrote:
> 
> Ah, the `version' should be int32 not int64.

Even if this is intended to be amd64 code, built as `nasm -f elf64'?
IIUC, you replaced `db' (``define byte'') and `dq' (``define quadword'',
that should be 8 bytes) with `dd' (``define double word'', that is 4
bytes, 32 bit). So the section only contains now `dd's.

I can't understand the ``NetBSD string'', which is the concatenation of
the 6 characters `NetBSD', the NULL character, and `$'. Is this a
conventional string? Where can I find it?
Also, in the code comments, it is stated to be ``8 bytes'' and it is in
the first version of your code, but now it is only 6 bytes, `NetBSD'. Is
it the same?

> And, looking at the
> nasm docs. suggests that sections can be annotated to match what
> the toolchain adds, This is better:
[...]
> +section .note.netbsd.ident note alloc noexec nowrite align=4

You added `note alloc noexec nowrite align=4'. I didn't know much about
the toolchain, so I'm not able to understand well these new strings.
By `nasm docs' you refer to the manpage nasm(1)?

Bye!

Rocky


Home | Main Index | Thread Index | Old Index