tootlog
Masanori Ogino ๐“€ Masanori Ogino ๐“€ reblogged at 8 years ago

้›ช้ค…๐Ÿ’ซ [email protected]

ๆœซไปฃ้ฏ–ใฎๅ‚ๅŠ ใ‚’้ฏ–ใฎ็‰ฉ็†่ท้›ขใ‚’่ฟ‘ใใ—ใฆใŠๅพ…ใกใ—ใฆใ„ใพใ™ใ€‚๏ผˆใƒ•ใƒฉใƒณใ‚น -> ๆฑไบฌ๏ผ‰

Masanori Ogino ๐“€ [email protected]

ใƒ‹ใ‚ณใƒ‹ใ‚ณใ‚’Coqใง่จผๆ˜Žใ—ใฆใฟใŸ / Yosh ใ•ใ‚“ - ใƒ‹ใ‚ณใƒŠใƒฌ niconare.nicovideo.jp/watch/kn

Masanori Ogino ๐“€ [email protected]

ไปถใ€ใจใซใ‹ใใ‚„ใ‚ŠใŸใ„ใ‹ใ‚‰ใ‚„ใ‚ŠใŸใ„ไปฅไธŠใฎ็†็”ฑใŒใชใ•ใใ†ใชๆฐ—ใŒใ—ใฆใใŸ

Masanori Ogino ๐“€ Masanori Ogino ๐“€ reblogged at 8 years ago

Masanori Ogino ๐“€ [email protected]

ใกใ‚ƒใ‚“ใจใƒใ‚ฐใจๆˆฆใฃใฆ

Masanori Ogino ๐“€ [email protected]

ใ€Œใƒใ‚ฐใƒˆใƒฉใƒƒใ‚ซใƒผใชใฉ่ฆใ‚‰ใฌใ€‚ใŠๅ‰ใซใจใฃใฆๆˆฆใ†็›ธๆ‰‹ใจใฏใ€่‡ช่บซใฎใ‚คใƒกใƒผใ‚ธใซไป–ใชใ‚‰ใชใ„ใ€

Masanori Ogino ๐“€ [email protected]

ไพ‹ใฎใ‚ˆใ†ใชใ‚ณใƒผใƒ‰ใใฎใ‚‚ใฎใ‚’ๆ›ธใไบบใฏใ‚ใพใ‚Šใ„ใชใ„ใ‘ใ‚Œใฉใ€ใ‚ใ‚Œใ“ใ‚Œใ‚„ใฃใฆใ„ใ‚‹ใ†ใกใซไบ‹ๅฎŸไธŠใ“ใ‚ŒใจๅŒใ˜ใ‚ณใƒผใƒ‰ใซใชใฃใฆใ‚ขใจใ„ใ†ใฎใฏใ‚ใ‚ŠใŒใก

Masanori Ogino ๐“€ [email protected]

blog.llvm.org/2011/05/what-eve ใฎไพ‹ใฏใ“ใ‚Œใงใ™ใญใ€‚

void contains_null_check(int *P) {
ใ€€int dead = *P;
ใ€€if (P == 0) return;
ใ€€*P = 4;
}

ใ“ใฎใ‚ณใƒผใƒ‰ใซใ€Œไธ่ฆใชNULLใƒใ‚งใƒƒใ‚ฏใ‚’ๅ‰Š้™คใ™ใ‚‹ใ€ๆœ€้ฉๅŒ–ใ‚’่กŒใ†ใจใ€int dead = *P;ใจใ„ใ†๏ผˆPใŒNULLใ ใจใใฎๆ™‚็‚นใงๆญขใพใ‚‹๏ผ‰ๆ–‡ใŒใ‚ใ‚‹ใ“ใจใ‹ใ‚‰ใ€if (P == 0) return;ใซๅˆฐ้”ใ™ใ‚‹ๅ ดๅˆใฏใƒใ‚งใƒƒใ‚ฏใ›ใšใจใ‚‚NULLใงใชใ„ใ“ใจใฏๆ˜Žใ‚‰ใ‹ใชใฎใงใ€€if (P == 0) return;ใŒๆถˆใˆใพใ™ใ€‚
ใใฎๅพŒใงใ€Œไฝฟใ‚ใ‚Œใฆใ„ใชใ„ๅค‰ๆ•ฐใ‚’ๅ‰Š้™คใ™ใ‚‹ใ€ๆœ€้ฉๅŒ–ใ‚’่กŒใ†ใจint dead = *P;ใ‚‚ๆถˆใˆใพใ™ใ€‚

void contains_null_check(int *P) {
ใ€€*P = 4;
}

็ตๆžœใ€NULLใƒใ‚งใƒƒใ‚ฏใŒใ‚ใฃใŸใฏใšใฎใ‚ณใƒผใƒ‰ใ‹ใ‚‰NULLใƒใ‚งใƒƒใ‚ฏใŒๆถˆใˆใพใ™ใ€‚ไฝ•ใŒๆ‚ชใ‹ใฃใŸใ‹ใจใ„ใ†ใจๆœ€้ฉๅŒ–ใฎ้ †็•ชโ€ฆโ€ฆใงใฏใชใใ€int dead = *P;ใŒๆ‚ชใ„

Masanori Ogino ๐“€ [email protected]

ไปฅๅ‰ใ“ใ“ใซ่ฒผใฃใŸใ‘ใฉใ€GCCใจClangใงๆœ€้ฉๅŒ–ใƒ‘ใ‚นใฎ้ฉ็”จ้ †ๅบใŒ้•ใ†ใฎใงใ€ใ•ใฃใใฎ่จ˜ไบ‹ใฎ2ๅ›ž็›ฎ blog.llvm.org/2011/05/what-eve ใซ็™ปๅ ดใ™ใ‚‹ใ‚ใ‚‹้ †็•ชใงๆœ€้ฉๅŒ–ใ™ใ‚‹ใจNULLใƒใ‚งใƒƒใ‚ฏใŒๅนใฃ้ฃ›ใถใ‘ใฉๅˆฅใฎ้ †็•ชใงๆœ€้ฉๅŒ–ใ™ใ‚‹ใจNULLใƒใ‚งใƒƒใ‚ฏใŒๆฎ‹ใ‚‹ใจใ„ใ†ไพ‹ใฏๅฎŸ้š›ใซ่ตทใใ‚‹

Masanori Ogino ๐“€ [email protected]

LLVM Project Blog: What Every C Programmer Should Know About Undefined Behavior #1/3 blog.llvm.org/2011/05/what-eve

ๆœ€ๅˆใฎ่ฉฑใซใคใ„ใฆใฏ๏ผˆไปฅๅ‰ใ‚‚็ดนไป‹ใ—ใŸใ‘ใฉ๏ผ‰ใ“ใฎ3ๅ›žใ‚ทใƒชใƒผใ‚บใ‚’่ชญใ‚€ใจ่‰ฏใ„ใ‚ˆ

Masanori Ogino ๐“€ [email protected]

2็•ช็›ฎใฎ่ฉฑใซใคใ„ใฆใฏใ‚ณใƒณใƒ‘ใ‚คใƒฉใซใ‚ณใƒณใƒˆใƒชใƒ“ใƒฅใƒผใ‚ทใƒงใƒณใ—ใ‚ˆใ†ไปฅๅค–ใซ่จ€ใ†ใ“ใจใŒใชใ„

Masanori Ogino ๐“€ Masanori Ogino ๐“€ reblogged at 8 years ago

ใ‹ใ‚‹ใฐใถ babukaru

ๆœฌใฎ่™ซ: ใชใ‚“ใงGCCใฏa*a*a*a*a*a ใ‚’ (a*a*a)*(a*a*a) ใซๆœ€้ฉๅŒ–ใงใใชใ„ใฎ๏ผŸใฃใจ cpplover.blogspot.com/2014/03/

ใพใ•ใซใ“ใ‚Œใฎ่ฉฑใฝใใ†๏ผŸ

Masanori Ogino ๐“€ [email protected]

ๆœ€ๅˆใฎ่ฉฑใซใคใ„ใฆใฏใ‚ณใƒณใƒ‘ใ‚คใƒฉใฎใƒใƒผใ‚ธใƒงใƒณใ‚’ไธŠใ’ใ‚‹ใจๅฃŠใ‚ŒใŸใ‚Šใ€ใ‚ณใƒณใƒ‘ใ‚คใƒฉใ‚’ๅค‰ใˆใ‚‹๏ผˆGCCใ‹ใ‚‰Clangใจใ‹๏ผ‰ใจๅฃŠใ‚ŒใŸใ‚Šใ€ๆœ€้ฉๅŒ–ใƒฌใƒ™ใƒซใ‚’ไธŠใ’ใ‚‹ใจๅฃŠใ‚ŒใŸใ‚Šใ€ใ‚ณใƒณใƒ‘ใ‚คใƒฉใฎใƒใƒผใ‚ธใƒงใƒณใ‚‚ๆœ€้ฉๅŒ–ใƒฌใƒ™ใƒซใ‚‚ๅŒใ˜ใงใ‚‚ๅ‡บๅŠ›ใ‚ณใƒผใƒ‰ใฎCPUใ‚ขใƒผใ‚ญใƒ†ใ‚ฏใƒใƒฃใŒ้•ใ†ใจใ‚ขใƒผใ‚ญใƒ†ใ‚ฏใƒใƒฃไพๅญ˜ใฎๆœ€้ฉๅŒ–ใƒ‘ใ‚นใŒๅˆ‡ใ‚Šๆ›ฟใ‚ใฃใฆๅฃŠใ‚ŒใŸใ‚Šใ€ใ‚ใ‚Šใจใ‚ใ‚‰ใ‚†ใ‚‹ใ‚ฟใ‚คใƒŸใƒณใ‚ฐใงๅฃŠใ‚Œใ‚‹ๅฏ่ƒฝๆ€งใŒใ‚ใ‚‹ใฎใงUBใฏใ‚„ใ‚ใ‚ˆใ†ใญใจใ„ใ†่ฉฑ

Masanori Ogino ๐“€ [email protected]

ๆœ€ๅพŒใฎ่ฉฑใซใคใ„ใฆใ‚‚ใ†ๅฐ‘ใ—่ฉฑใ™ใจใ€ๆ•ฐๅญฆใฎๆŽˆๆฅญใง็ฟ’ใ†a * (b + c) = a * b + a * cใฎใ‚ˆใ†ใชๆ’็ญ‰ๅผใง่กจใ•ใ‚Œใ‚‹ๅผๅค‰ๅฝขใŒใƒ—ใƒญใ‚ฐใƒฉใƒŸใƒณใ‚ฐ่จ€่ชžใŒๆไพ›ใ—ใฆใ„ใ‚‹ๆ•ดๆ•ฐๅž‹ใ‚„ๆตฎๅ‹•ๅฐๆ•ฐ็‚นๆ•ฐๅž‹ใฎๅผใงใ‚‚ๅฟ…ใšๆˆใ‚Š็ซ‹ใคใจใฏ้™ใ‚‰ใชใ„ใฎใงใ™ใŒใ€-ffast-mathใฎใ‚ˆใ†ใชใ‚ชใƒ—ใ‚ทใƒงใƒณใฏใ‚ใŸใ‹ใ‚‚ๅฟ…ใšๆˆใ‚Š็ซ‹ใคใ‹ใฎใ‚ˆใ†ใซๅผๅค‰ๅฝขใ‚’ใ—ใฆ่จˆ็ฎ—ใ‚’้ซ˜้€ŸๅŒ–ใ™ใ‚‹ไปฃใ‚ใ‚Šใซ็ตๆžœใŒๅ…ƒใฎๅผใจๅˆฅใฎๅ€คใซใชใฃใŸใ‚Šใชใ‚‰ใชใ‹ใฃใŸใ‚Šใ—ใพใ™

Masanori Ogino ๐“€ [email protected]

ใ‚ณใƒผใƒ‰ใซๅ•้กŒใŒใ‚ใ‚‹ๅ ดๅˆใ‚‚ใ‚ใ‚‹๏ผˆใŸใจใˆใฐใ€ไธ–ใฎไธญใฎC่จ€่ชžใฎใ‚ณใƒผใƒ‰ใซใฏใ—ใฐใ—ใฐ่จ€่ชžไป•ๆง˜ไธŠๅ‹•ใใ“ใจใŒไฟ่จผใ•ใ‚Œใฆใ„ใชใ„่จ˜่ฟฐใŒๅซใพใ‚Œใฆใ„ใ‚‹๏ผ‰ใ—ใ€ๆœ€้ฉๅŒ–ใซใƒใ‚ฐใŒใ‚ใ‚‹ๅ ดๅˆใ‚‚ใ‚ใ‚‹ใ—ใ€ๅผทใ„ๆœ€้ฉๅŒ–ใฎไธญใซใฏ่จ€่ชžไป•ๆง˜ไธŠ่จฑใ•ใ‚Œใฆใ„ใชใ„ใ‚ณใƒผใƒ‰ๅค‰ๆ›ใ‚’่กŒใ†ใ‚‚ใฎ๏ผˆGCCใฎ-ffast-mathใชใฉ๏ผ‰ใ‚‚ใ‚ใฃใฆใ€ใ“ใ‚Œใ‚’ไฝฟใ†ใจ่จ€่ชžไป•ๆง˜ใซใ‚ˆใ‚Œใฐใ‚ใ‚‹็ตๆžœใŒ็ขบๅฎŸใซๅพ—ใ‚‰ใ‚Œใ‚‹ใ‚ณใƒผใƒ‰ใ‚‚ๅˆฅใฎ็ตๆžœใ‚’ๅพ—ใ‚‹ใ‚ˆใ†ใซใชใฃใฆๅฃŠใ‚Œใ‚‹ใ“ใจใŒใ‚ใ‚‹

Masanori Ogino ๐“€ Masanori Ogino ๐“€ reblogged at 8 years ago

ใ‹ใ‚‹ใฐใถ babukaru

ใใ†ใ„ใˆใฐใฉใ†ใ—ใฆๆœ€้ฉๅŒ–ใ‚’ๅผทใใ™ใ‚‹ใจๅ‹•ใ‹ใชใใชใ‚‹ใ‚“ใ ใ‚ใ† ใ‚ใ‚ŒใฏๅฎŸ้š›ใ‚ณใƒผใƒ‰ใŒใ‚ใ‚‹ใ„ใ‚‚ใฎใชใฎ ใใ‚Œใจใ‚‚ๆœ€้ฉๅŒ–ๅดใŒใ‚ใ‚‹ใ„ใ‚‚ใฎใชใฎ