[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
マシンによっては、アーキテクチャがきれいなのでオペランドの制約を 必要としないものもある。例えば、Vax では、オペランドがある文脈で有効なら、 その他のどの文脈でも有効である。そういうマシンでは、各オペランド制約は ‘g’ になるだろう。例外は、“load address” 命令のオペランドだけである。 “load adress” 命令は、指定されたメモリ位置の内容を参照するかのような 書き方をするが、実際はアドレスを参照するだけである。この場合には 制約は ‘p’ になる。
このようなマシンでは全部の制約について ‘g’ や ‘p’ と
書く代わりに、制約を空にすることもできる。
その場合には、各 match_operand
の制約を ‘""’ とすれば良い。
アドレスオペランドは、
address
式で match_operand
囲むように書くことによって
認識されるのであり、制約によって認識されるのではない。
マシン記述の制約が単に空なら、コンパイル過程の特定の部分が 省略され、コンパイルが速くなる。 だが、制約を必要としない機種は実際にはほとんど存在しない。 現在存在するマシン記述は全て制約を使っている。
This document was generated
using texi2html 1.78.