Really cool video series! As a computer engineering student, I find your videos entertaining and very informative. I recently tried searching for one of your videos on yt but you didn't show up in any of my searches... Hopefully the algorithm favours you soon, you deserve it!
@mattcoffin295 сағат бұрын
I picked up the Linux graphics stack over the last year or two. This is the absolute coolest video series. The intro video with all the "unknown" acronyms and things is probably the most laughter I've had at 10 min of video content in a long time. Keep it up. I'm sure these will be HUGE and a great resource for others going forward. Looking forward to seeing all the things you deep dive in to!
@sphaerophoria3 сағат бұрын
You gotta start somewhere! We started lost as all hell
@blarghblargh2 күн бұрын
SSA/static single assignment means you pretend you have infinite registers/local variables, and that each assignment gets set to a new register/local variable. it is sort of like breaking out every single possible temporary variable into a local variable - taken to the extreme. then making that variable const. including making a second assignment of the same variable an entirely different variable. it's basically the exact same code, but is a more normalized form of the code graph, where you never have to think about reassignment. it makes it a simpler as an intermediate step when figuring out what your data dependencies between bits of code are, whether values go dead, whether a bit of code is dead, etc. a later stage in codegen will squash all the single assignments back down into registers/stack pushes and pops, etc. that will happen after all the pruning and reordering happens in the simpler SSA state. TBH, the wikipedia article explains the basics pretty well, without super complicated language and jargon.
@sphaerophoria2 күн бұрын
Cool, that was my guess, but glad to hear some confirmation
@blarghblargh2 күн бұрын
a + b = b + a is commutativity (a * b) * c = a * (b * c) is associativity subtraction and division are neither commutative nor associative