Just-in-time Compiler in JavaScriptCore (WebKit)

preview_player
Показать описание
Part 3: Introducing the JavaScript interpreter, DFG JIT and FTL JIT from WebKit in this third part. To do that we use the debug version of JSC again and use environment variables to print useful debug output.

-=[ 🕴️Advertisement ]=-

-=[ ❤️ Support ]=-

-=[ 🔴 Stuff I use ]=-

-=[ 🐕 Social ]=-

-=[ 📄 P.S. ]=-

All links with "*" are affiliate links.
LiveOverflow / Security Flag GmbH is part of the Amazon Affiliate Partner Programm.
Рекомендации по теме
Комментарии
Автор

Thank you for the video! Clearing the air all around javascript and how it works under the hood is really interesting

nikoshalk
Автор

This turned out to be pretty theoretical. I need to brush up on how JIT compiling in general works to wrap my head fully around this.

EvilSapphireR
Автор

Hans, I love you. You have a gift of explaining everything so well everyone understands!

ZelenoJabko
Автор

Really interesting. Thank you very much! Can't wait for the next video!

SkrekkLich
Автор

I've never seen JS as a real and serious language. Something to use in browsers to spice up the webpage I'm working on. The "real" and interesting compiler-stuff is reserved for "real" languages like C or even python. I never thought about how JS gets executed and that all of this optimization-stuff is used - after all it's just used to spice up webpages.
Thank you for getting me closer to this topic, my view of JS is changing and I am excited for the rest of the series.

TobyAsE
Автор

This video is just in time for my break.

centdemeern
Автор

7:03 Why is there +0x8 after rsi? (I am assuming that rsi is a pointer ro the start of the array so shouldn't it already point at the first element?)

sontapaajokulainen
Автор

It would be nice to see video like this but about V8, since Safari is rather niche.

Byamarro
Автор

Could there be attacks on the butterfly of a function, changing it to one that of a _completely innocent_ string

VaradMahashabde
Автор

the thing with clobberWorld() was very confusing :( I did not understand what you said at all. Who is calling that? When? So this is a marker for not optimizing certain functions, which is hardcoded for, for example String.valueOf ? huh? Why is that function harmful to optimize? What about user defined functions, are they always optimized? ... sorry I think I don't belong here :|

dasten
Автор

Is there a way to decompile (c++ written) dll/exe? Or atleast know what are they doing/changing?

awesmeness
Автор

7:20 Javascript doesn't have doubles. Only floats, bigints and typed arrays.

omri
Автор

Recommend:
If water was made of sponge

florian
Автор

Your channel is my new favorite. How about testing some keygens or game cracks?

gizmoriderfulye
Автор

*I pronounce jit as git*
Thats how jif sounds for us

creeper
Автор

Hello LiveOverflow!
I really tried to be first this time. Sorry for being a bit late.

firefish
Автор

I find this so sad. Such a complex system written by some incredible people... all to run the abomination that is JavaScript.

adamnshame
Автор

1 view
2 likes
*YouTube is drunk again*

OmarMohamed-ynzy