Today's Bug
Yo! Ho! Everybody! What’s up today?今日は俺様の COOOOL で MARVELOUS な bug を報告しちゃうぜ! yo chki now.
void hoge() { a.WORD = *(unsigned long *)BUS_ADDRESS & 0xFFFF ; }
32bitでバスリードして、下16bitマスクかけて、16bit のレジスタに入れたかったんだ。だけど、コンパイルしたら最適化の結果、見事に16bitリードにされてました OTZ
こういう時は、こうすると良いみたい。
void hoge() { unsigned long data_tmp ; data_tmp = *(unsigned long *)BUS_ADDRESS ; a.WORD = data_tmp & 0xFFFF ; }
ディスカッション
コメント一覧
まだ、コメントがありません