Posts by Tag

X86

All about GPR and APX PUSH POP

9 minute read

Evolution of GPR (General-Purpose Register) 16-bit Processors and Segmentation (1978) The IA-32 architecture family was preceded by 16-bit processors, the 80...

All about APX conditional ISA

7 minute read

Motivation Somtimes branch mispredictions are a major performance limiter in workloads. The bottleneck is data-dependent conditional branches and hard to mit...

All about APX JMPABS

4 minute read

Why do we need JMPABS? JMPABS, which, as the name already suggests, allows jumping to a 64-bit absolute address. Before APX, X86 has 32-bit displacement limi...

All about APX relocation

5 minute read

REX2 Intel® APX introduces a new 2-byte REX2 prefix in order to support 32 general-purpose registers (GPRs).

X86 relocation

13 minute read

What’s relocation Relocations are entries in binaries that are left to be filled later – at link time by the toolchain linker or at runtime by the dynamic li...

X86 Instruction Format

4 minute read

Learn by yourself Intel Software Developer’s Manual The most authoritative and official reference manual Volume 2 out of 4 volumes: Instr...

Back to Top ↑

APX

All about GPR and APX PUSH POP

9 minute read

Evolution of GPR (General-Purpose Register) 16-bit Processors and Segmentation (1978) The IA-32 architecture family was preceded by 16-bit processors, the 80...

All about APX conditional ISA

7 minute read

Motivation Somtimes branch mispredictions are a major performance limiter in workloads. The bottleneck is data-dependent conditional branches and hard to mit...

All about APX JMPABS

4 minute read

Why do we need JMPABS? JMPABS, which, as the name already suggests, allows jumping to a 64-bit absolute address. Before APX, X86 has 32-bit displacement limi...

All about APX relocation

5 minute read

REX2 Intel® APX introduces a new 2-byte REX2 prefix in order to support 32 general-purpose registers (GPRs).

Back to Top ↑

Chinese

A Tour To C++ Attribute

4 minute read

内容概要 什么是attribute C++11到C++17的常用attribute介绍 为名空间和枚举型添加attribute C++17新特性:忽略未知的attribute 使用using指令避免名空间的重复书写 Bjarne Stroustrup对attribute的使用建议

A Tour To LLVM IR

7 minute read

内容概要 什么是LLVM IR?如何得到IR? LLVM编译的流程,IR文件之间的链接简介 C++ name mangling的用途,“extern C”作用的极简介绍 IR文件的布局 IR中函数定义的结构,什么是BB,什么是CFG IR是一个强类型语言,如何用工具检查IR的合法性 ...

Back to Top ↑

LLVM

A Tour To LLVM IR

7 minute read

内容概要 什么是LLVM IR?如何得到IR? LLVM编译的流程,IR文件之间的链接简介 C++ name mangling的用途,“extern C”作用的极简介绍 IR文件的布局 IR中函数定义的结构,什么是BB,什么是CFG IR是一个强类型语言,如何用工具检查IR的合法性 ...

Back to Top ↑

C++

A Tour To C++ Attribute

4 minute read

内容概要 什么是attribute C++11到C++17的常用attribute介绍 为名空间和枚举型添加attribute C++17新特性:忽略未知的attribute 使用using指令避免名空间的重复书写 Bjarne Stroustrup对attribute的使用建议

Back to Top ↑

ISA

X86 Instruction Format

4 minute read

Learn by yourself Intel Software Developer’s Manual The most authoritative and official reference manual Volume 2 out of 4 volumes: Instr...

Back to Top ↑

ABI

X86 relocation

13 minute read

What’s relocation Relocations are entries in binaries that are left to be filled later – at link time by the toolchain linker or at runtime by the dynamic li...

Back to Top ↑