演算子空間と文法空間

インラインアセンブラは asm {}の中身はアセンブラとして構文解析されました。

インラインアセンブラを作る場合、新しい演算子空間に入ったところで文法も変わり、抽象構文木は別物にすることになるでしょう。

ホスト言語の文法に対して、ドメイン特化言語の文法は別にできるわけです。文法と文法を分けて別々な物と認識するために文法空間という物を使うとよいでしょう。asm { ... }のカッコの中はアセンブラ文法空間であるとするわけです。
さて、演算子空間と文法空間の境目は一緒となることが多いでしょう。演算子空間のみなら無名で扱うのがいいかもしれません。しかし、文法も別になるのであれば名前を付けて扱うのが自然でしょう。演算子を定義できる言語において、DSLを作成する場合はドメイン特化言語の名前と文法、演算子の指定も行えるとよいと思います。

asm {}の中身は演算子の優先順位が変わることはあっても、C式の範囲内で扱うとよいでしょう。
そうすることで、一定の規則に則ったアセンブラが作れます。
また、パーサの構造も単純なままにできます。
構文木を構築するパーサは1つで済み、データ構造も1つで済むのです。