かなり個人的なメモになってしまうけど、gccでアセンブラにオプションを渡すには -Waを使うらしい。例えばsparcでv8plusの命令セットを 使いたい場合には-Wa,-xarch=v8plusを つけてコンパイルすればいい。
これは何に使うかというと、UltraSparcでクロックカウンタを読み出す命令 rdtickがv8plusだと使えるのだ。 ついでにコードも載せておくとこんな感じ。
static inline unsigned long rdtick ()
{
unsigned long x;
asm volatile ("rd %%tick, %0" : "=r" (x));
return x;
}
