Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
lldbを使ってCRubyの中を覗く
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Koji NAKAMURA
August 25, 2026
Technology
22
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
lldbを使ってCRubyの中を覗く
Kashiwa.rb #26
https://kashiwarb.connpass.com/event/402700/
Koji NAKAMURA
August 25, 2026
More Decks by Koji NAKAMURA
See All by Koji NAKAMURA
Lightning近況報告
kozy4324
0
310
龍昌餃子で理解するWebサーバーの並行処理モデル - 東葛.dev #9
kozy4324
1
370
Rubyで作る論理回路シミュレータの設計の話 - Kashiwa.rb #12
kozy4324
1
620
Rubyで作る論理回路シミュレータ - Shinjuku.rb #99
kozy4324
0
130
Steep導入したいRTA - Kashiwa.rb #11
kozy4324
0
250
これまで細々と作成したGemの紹介をします - Kashiwa.rb #9
kozy4324
0
320
東京Ruby会議12のお手伝いしてきた話
kozy4324
0
140
個人開発発表 LT - Shinjuku.rb #97
kozy4324
0
940
Ruby界隈を中心に2024をふりかえる - Kashiwa.rb #6
kozy4324
0
260
Other Decks in Technology
See All in Technology
DAMOS - The Smart Cruise Control for RAM
ennael
PRO
1
130
転んだ話が背中を預ける理由になる / A_story_about_falling_down_gives_you_a_reason_to_watch_each_other_s_backs.pdf
pauli
2
210
AI 時代の Azure エンジニアリング ~ 私たちは何を磨き、何を任せるのか ~
chack411
1
450
ミイダス株式会社 テックチームのご紹介 / MIIDAS Tech Team
miidas
0
150
AI駆動開発、viviONの1年 ── うまくいったこと・いかなかったこと
vivion
0
210
LLM機能を自作して分かるSnowflake Cortex AIの強み
nayuts
0
290
雪かき部 #7 もう怖くない!SELECT文!
foursue
0
280
Google Cloud Next Tokyo 26登壇時のスクリプト
recruitengineers
PRO
0
190
営業オントロジーの作り方と、エージェントからの辿り方 ── ナレッジワークの現場から
kworkdev
PRO
1
260
AgentCoreで実践するハーネスエンジニアリング
yakumo
1
280
Swap and Memory Reclaim - Squeezing Out More RAM
ennael
PRO
1
1.6k
AIアプリを使い分けるための共通ツール基盤を考えてみる#devio2026
osawa
0
240
Featured
See All Featured
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
The agentic SEO stack - context over prompts
schlessera
0
960
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
450
New Earth Scene 8
popppiees
4
2.6k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Prompt Engineering for Job Search
mfonobong
0
480
Code Reviewing Like a Champion
maltzj
528
40k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
33
5.1k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
3.2k
The Invisible Side of Design
smashingmag
301
52k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
50
10k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.4k
Transcript
lldbを使ってCRubyの中を覗く 2026.8.20 Kashiwa.rb #26 Koji NAKAMURA (@kozy4324)
自己紹介 Koji NAKAMURA • 𝕏: @kozy4324 • GitHub:@kozy4324 • Kashiwa.rb主催
最近 of kozy4324 • 書籍片手にCRubyソースコードリーディング
\CRubyムズカシイ/
lldb
lldb • デバッガ • LLVMプロジェクトの一部として開発されているもの ◦ GNUプロジェクトの方で開発されてるのは gdb • macOSでは標準的なデバッガ
◦ XCodeがLLVM/Clangを採用しているかららしい
via Ruby Documentation • https://docs.ruby-lang.org/en/master/contributing/building_ruby_md.html#debugging
今回のゴール • Rubyコード → ISeq を確認 • 確認した ISeq から何かしらの
CRuby コードが動いている ぞ!っていう部分の繋がりを確認する
Rubyコード
Rubyコードに対する ISeq
Rubyコードに対する ISeq
newhash • https://github.com/ruby/ruby/blob/v4.0.0/insns.def#L580-L598
opt_aset • https://github.com/ruby/ruby/blob/v4.0.0/insns.def#L1536-L1552
opt_aref • https://github.com/ruby/ruby/blob/v4.0.0/insns.def#L1516-L1534
Rubyコード → ISeq → CRuby実装 の繋がり • {} → newhash
→ rb_hash_new • h[:a] = → opt_aset → vm_opt_aset → rb_hash_aset • h[:a] → opt_aref → vm_opt_aref → rb_hash_aref
デモ
lldbで動かしてみて • Rubyコード → ISeq → CRuby実装 をなんとなく理解 • と同時に分からないことが複数一気に出てきた
◦ insns.defの見方 ◦ insns.defにある「attr bool leaf = false;」とは? ▪ LLM曰く「VMの世界から外に出うる命令」らしい??? ◦ insns.defにあるコード片?が実際にどう統合される? ◦ and more …
EOF