I used to maintain a blog while I was in high school, like many others who have participated in Olympiad in Informatics did. I had been used to posting solutions to competition problems I encountered,| sillycross.github.io
Some day last week, I was writing code for my|
This is the Part 2 of a series. Feel free to read the prequel for more context:|
This is Part 1 of a series of posts. Part 2 is available here:|
I recently hit the following use case in my project: I have a function RunAllPasses(obj), which runs a list of|
I have a double, and I want to know if its value is an integer that fits in a int64_t. How can I do it in|
TL;DR: Some of the P-cores in Alder Lake CPU can exhibit highly unstable performance behavior, resulting in large noise for any|
Javascript relies on garbage collection (GC) to reclaim memory. In this post, we will dig a little bit into JSC (the Javascript engine|
Recently I decided to get a new laptop to replace my 5-years-old one. I happened to discover something called “barebone laptop”, which|
While Javascript has a simple syntax, what happens behind the scene is far from simple. For example, consider this innocent-looking|
In the past years, I have undergone a few cycles of learning the x86-64 memory model, only to eventually forget it again. Today I was|
Quite a while ago I was implementing an interpreter. A common task in the interpreter is to select the correct interpreter function|
Recently I attended the|
This is another note on JavaScriptCore (JSC)'s DFG JIT. The topic today is on DFG’s IR design and a related optimizer pass called|
Recently I’ve been spending time to understand some internals of JavaScriptCore (JSC), the Javascript JIT compiler powering the Safari|
A while ago I had been co-lecturing a small group of OI students with Richard. I was impressed how he could just take over any talk on|
Yesterday I got into the following problem. I want to allow certain C++ struct definitions in my code to be reflectively inspected. For|
Today I got into a question loosely related to my research. Many language VMs choose to implement their own call stack, instead of|