|
You are here |
travisdowns.github.io | ||
| | | | |
nullprogram.com
|
|
| | | | | ||
| | | | |
coredumped.dev
|
|
| | | | | In this post, we are going to take a deep dive into pointer tagging, where metadata is encoded into a word-sized pointer. Doing so allows us to keep a compact representation that can be passed around in machine registers. This is very common in implementing dynamic programming languages, but can really be used anywhere that additional runtime information is needed about a pointer. We will look at a handful of different ways these pointers can be encoded and see how the compiler can optimize them for diff... | |
| | | | |
cellperformance.beyond3d.com
|
|
| | | | | [AI summary] The provided text discusses strict aliasing in C programming, particularly in the context of the C99 standard. It explains how strict aliasing rules prevent different types from referring to the same memory location, and how this affects compiler optimizations. The text also covers the use of standard integer types like uint64_t and uint32_t from the C99 stdint.h header, and emphasizes the importance of enabling strict aliasing with GCC's -fstrict-aliasing flag for performance and correctness. | |
| | | | |
swatinem.de
|
|
| | | |||