[過去ログ]
Qiita 3 - キータぞ、来たぞ、キータだぞー (1002レス)
Qiita 3 - キータぞ、来たぞ、キータだぞー http://mevius.5ch.net/test/read.cgi/tech/1685235361/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
253: デフォルトの名無しさん [sage] 2023/08/08(火) 19:36:07.20 ID:bRo0TWoK C言語における「bool型へのキャスト」が無限の(悪用)可能性を秘めている理由 https://webcache.googleusercontent.com/search?q=cache:ED5C8TAFrNYJ:https://qiita.com/wantun/items/4574049283e1cd7d50cf 程度低い記事だなあ、これはツッコまれるの不可避だわと思っていたら消えていた。 http://mevius.5ch.net/test/read.cgi/tech/1685235361/253
260: デフォルトの名無しさん [sage] 2023/08/10(木) 16:12:44.88 ID:RFVZcdoC >>253 考え自体は正しい 条件分岐はパイプラインを乱す 条件分岐とならないコードが生成されることが望ましい しかし多くのケースではコンパイラのコード生成に任せることができる 今回のケースならばif文のままでも条件ムーブ(CMOVcc)命令などが生成され条件分岐とならないだろう ソースコードの可読性からもif文のままが好ましい ただしもっと複雑なケースで複数の条件分岐をなくして演算のみにできる場合もある そしてコンパイラ任せではそのようなコード生成が無理な場合もある その場合はベンチ測定比較すれば有意な差が出るためそれは正しい判断となる http://mevius.5ch.net/test/read.cgi/tech/1685235361/260
265: デフォルトの名無しさん [sage] 2023/08/10(木) 19:51:41.79 ID:UyoKACkM したがって>>253の記事は全面的に正しい bool値を数値演算として使うことを積極的に推奨する http://mevius.5ch.net/test/read.cgi/tech/1685235361/265
266: デフォルトの名無しさん [sage] 2023/08/10(木) 19:57:21.15 ID:c2H9n5TK > したがって>>253の記事は全面的に正しい boolへのキャストなんてしねーよ馬鹿か http://mevius.5ch.net/test/read.cgi/tech/1685235361/266
298: デフォルトの名無しさん [sage] 2023/08/12(土) 16:53:18.46 ID:wD60IGH3 >>292 if文を無くせる場合があるというのが>>253の記事 そしてif文を無くした方が10倍速くなる場合を示してくれたのが>>286の測定 何がトレードオフになっているかというと if文があるとCPUは条件分岐によるパイプラインの乱れのペナルティを喰らう if文がないとCPUは条件に関わらず同じ命令群を実行する (=条件の片方では無意味なことをする可能性がある) したがってif文を無くせる場合はまず大雑把に言うとif文の(条件部ではなく)実行部がある程度短く実行サイクルも短いこと 例えば軽い数値の演算やその代入などならばif文を無くせる場合に合致することが多いだろう http://mevius.5ch.net/test/read.cgi/tech/1685235361/298
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.031s