From ba9f2cb974158299ba425c3f1b5e303b9176fc7c Mon Sep 17 00:00:00 2001 From: Federico Angelilli Date: Sat, 8 Mar 2025 11:13:40 +0100 Subject: Clean up --- content/posts/pointer-tagging/index.md | 5 +++-- content/posts/series-part1.md | 8 -------- content/posts/series-part2.md | 8 -------- 3 files changed, 3 insertions(+), 18 deletions(-) delete mode 100644 content/posts/series-part1.md delete mode 100644 content/posts/series-part2.md diff --git a/content/posts/pointer-tagging/index.md b/content/posts/pointer-tagging/index.md index 3ee1b6a..d70f1d3 100644 --- a/content/posts/pointer-tagging/index.md +++ b/content/posts/pointer-tagging/index.md @@ -251,7 +251,7 @@ The implementation will be fairly trivial, but it will introduce the value types coding style that we will use from now on. Firstly, let's introduce the tags that we are going to use. -In this case, they are direct translation of the types of value that we can represent. +In our examples, they are direct translations of the types of value that we can represent. ```c typedef enum { @@ -357,7 +357,8 @@ Since you have got the hang of it, these are the operations for the remaining va #define VALUE_TO_TINYSTR(val) ((val).to.tinystr) ``` -In this implementation, the tag is not bitmangled and can thus be accessed very fast. +In this implementation, the tag can be accessed very fast +without any further operation (shift/masking). However, the size overhead is quite detrimental. Usually, a tagged union made from two words is passed around using two registers. This effectively halves the number of available processor registers and makes diff --git a/content/posts/series-part1.md b/content/posts/series-part1.md deleted file mode 100644 index e76f84c..0000000 --- a/content/posts/series-part1.md +++ /dev/null @@ -1,8 +0,0 @@ -+++ -title = 'Series Part1' -date = 2025-01-28T21:59:23+01:00 -draft = true -series = ["My beautiful series N1"] -+++ - -# FIRST diff --git a/content/posts/series-part2.md b/content/posts/series-part2.md deleted file mode 100644 index d55fa47..0000000 --- a/content/posts/series-part2.md +++ /dev/null @@ -1,8 +0,0 @@ -+++ -title = 'Series Part2' -date = 2025-01-28T21:59:30+01:00 -draft = true -series = ["My beautiful series N1"] -+++ - -# SECOND -- cgit v1.2.3