>>500
volatileの機能は明確に定義されていて
万能だとか頭の悪そうな話は必要ない

実機でデバッグしてコンパイラのバグが発覚することはあって
そのときの状況によってはアセンブラを使うこともあるが
アセンブラで「叩く」って言葉遣いは変だぜ
石を叩くのはCでもできるしな

ところで、おまえさんのところでは
JTAGじゃなくICEって言うのか