From: erik quanstrom <quanstro@quanstro.net>
To: 9fans@9fans.net
Subject: Re: [9fans] FP register usage in Plan9 assembler
Date: Wed, 3 Feb 2016 07:24:25 -0800 [thread overview]
Message-ID: <fc42bda0163394857779140dd988c036@lilly.quanstro.net> (raw)
In-Reply-To: <CAGGHmKFWKzep+c5yuDuJEBVSf+US_Ck9AQSeUt3AJ7W-ODfTrw@mail.gmail.com>
On Tue Feb 2 08:43:47 PST 2016, sstallion@gmail.com wrote:
> Hi Giacomo,
>
> It's probably worth mentioning that learning assembly using the Plan 9
> assembler is probably a bad idea. *a makes heavy use of pseudo
> instructions and registers and unless you're well versed in its
> quirks, can be very confusing when looking at more common assembly
> dialects. Many instructions are directly encoded in the instruction
> stream, largely due to the fact that it is more difficult than it
> should be to extend the assembler as architectures evolve*. More
> mechanically, Plan 9 makes use of a loader, which causes a number of
> operations you would expect to be present in the assembler to be
> deferred until later.
hi, steve!
i've found the plan 9 assemblers to be straight-forward enough. i love
the consistency from one architecture to another. i like the fact that
there are so few meta-directives, and i do like the fact that the linker
will do the obvious rearrangments of plan 9 assembly, including automatic
delay slot filling, and other such fiddly bits.
obviously, this is just an opinion, so ymmv.
i think this is off the original point, but as to modifying the assmbler.
to add a new instruction, the linker, assembler and libmach need modification.
typically this is a matter of adding a line to each one for assembly, linking,
and disassembly, respecively. it's worth looking at the addition of the ymm,
and then zmm registers and those patterns to 6[al] and libmach. this is an
example of adding a new instruction encoding to an existing arch.
> * The diff to update support for ARMv7-A to 5a came in at over 2800
> lines; this was to add a handful of instructions.
do you perhaps mean the linker?
the pi kernels, which supports v6 (original) and v7 (pi2) rely on small asm
files for arch-specific functions. i think you provided some explaination of
why this approach would not work for v5, but unfortunately, i don't remember
it.
- erik
next prev parent reply other threads:[~2016-02-03 15:24 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-02-01 16:47 Giacomo Tesio
2016-02-01 22:38 ` Charles Forsyth
2016-02-01 22:44 ` Charles Forsyth
2016-02-01 22:48 ` cinap_lenrek
2016-02-01 23:34 ` Giacomo Tesio
2016-02-02 0:36 ` Charles Forsyth
2016-02-02 0:58 ` Giacomo Tesio
2016-02-02 12:39 ` Aram Hăvărneanu
2016-02-02 16:42 ` Steven Stallion
2016-02-02 17:16 ` lucio
2016-02-03 15:24 ` erik quanstrom [this message]
2016-02-03 15:51 ` Steven Stallion
2016-02-03 16:36 ` erik quanstrom
2016-02-04 10:08 ` Aram Hăvărneanu
2016-02-04 12:04 ` lucio
2016-02-04 15:58 ` Ryan Gonzalez
2016-02-04 16:09 ` lucio
2016-02-04 18:06 ` Ryan Gonzalez
2016-02-04 18:14 ` balaji
2016-02-04 18:28 ` Ryan Gonzalez
2016-02-04 19:31 ` Skip Tavakkolian
2016-02-04 12:24 ` Brantley Coile
2016-02-04 12:53 ` lucio
2016-02-04 14:57 ` erik quanstrom
2016-02-04 14:05 ` Aram Hăvărneanu
2016-02-04 14:10 ` Aram Hăvărneanu
2016-02-04 14:30 ` Aram Hăvărneanu
2016-02-04 15:07 ` Charles Forsyth
2016-02-04 15:16 ` erik quanstrom
2016-02-04 15:11 ` erik quanstrom
2016-02-04 15:22 ` erik quanstrom
2016-02-04 15:26 ` Charles Forsyth
2016-02-04 20:34 ` erik quanstrom
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=fc42bda0163394857779140dd988c036@lilly.quanstro.net \
--to=quanstro@quanstro.net \
--cc=9fans@9fans.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).