Code Models and Relocation Types
本文主要探讨 code models, relocation 与 relocation types。文章首先解释不同的 code models 如何影响编译器的代码生成,然后介绍 relocation 这一机制和常见的 relocation type。文章结合多个代码示例说明在不同场景下(如不同 code models 下的函数调用、全局变量访问)生成的汇编代码以及所使用的 relocation types。
本文主要探讨 code models, relocation 与 relocation types。文章首先解释不同的 code models 如何影响编译器的代码生成,然后介绍 relocation 这一机制和常见的 relocation type。文章结合多个代码示例说明在不同场景下(如不同 code models 下的函数调用、全局变量访问)生成的汇编代码以及所使用的 relocation types。
Hazard pointers 一直在我的 todo list 上,但是一直没有时间和机会深入研究。最近听了 Maged M. Michael 关于 hazard pointers 的分享,正好趁此机会学习下 hazard pointers,整理成一篇博客。
《风雪夜归人》在北京人艺的首演是在 1957 年 4 月 27 日,此后北京人艺再未复排过该剧。2025 年 4 月 27 日距离 1957 年 4 月 27 日恰好是 68 年整。
2.16 和朋友一起去北京人艺看了《日出》,为了有更好的观赏体验,我提前做了一点功课,粗读了一遍《日出》原文。观看演出后,我觉得还是该写点什么,即使写出来什么也不是。
本文基于 llvm-project 的 release/19.x 分支版本,分析 atomics 在 Clang/LLVM 中的实现,包括 __atomic_*
builtins、C11 _Atomic
、C++11 std::atomic
等。
写在参加工作三周年之际。
本文分析 LLVM 中 Branch Probability Analysis 的实现。
本文是笔者对 C++ memory model 中 atomic operations 和 memory order 的理解。
在上一篇文章 SLP Vectorizer: Part 1 - Implementation in LLVM 中我们学习 LLVM 的 SLP Vectorizer 实现,本文基于 SPEC CPU 2017 来评估 SLP Vectorizer 的优化效果。
本文分析 LLVM 的 SLP Vectorizer 实现。