summaryrefslogtreecommitdiff
path: root/content
diff options
context:
space:
mode:
authorFederico Angelilli <code@fedang.net>2025-03-08 19:45:00 +0100
committerFederico Angelilli <code@fedang.net>2025-03-09 11:41:38 +0100
commit1b72e6bed05355b83683b911b115ab60751a9e0b (patch)
tree17fae59c53eaf11c306d9d6e9be679b4af024473 /content
parent4436b2ce541b57b84a1ac540f18d04a97661409f (diff)
Publish article
Diffstat (limited to 'content')
-rw-r--r--content/posts/pointer-tagging/highbits.c4
-rw-r--r--content/posts/pointer-tagging/index.md6
-rw-r--r--content/posts/pointer-tagging/lowbits.c4
-rw-r--r--content/posts/pointer-tagging/test.c4
-rw-r--r--content/posts/pointer-tagging/union.c4
5 files changed, 20 insertions, 2 deletions
diff --git a/content/posts/pointer-tagging/highbits.c b/content/posts/pointer-tagging/highbits.c
index f88a731..d3c73ae 100644
--- a/content/posts/pointer-tagging/highbits.c
+++ b/content/posts/pointer-tagging/highbits.c
@@ -1,3 +1,7 @@
+// Copyright (c) 2025 Federico Angelilli
+// Licensed under the 3-Clause BSD License
+// See fedang.net/posts/pointer-tagging
+
#include <stdint.h>
#include <stdbool.h>
#include <string.h>
diff --git a/content/posts/pointer-tagging/index.md b/content/posts/pointer-tagging/index.md
index 8789eec..afe78dc 100644
--- a/content/posts/pointer-tagging/index.md
+++ b/content/posts/pointer-tagging/index.md
@@ -1,9 +1,8 @@
+++
title = 'Theory and implementation of tagged pointers'
-date = 2025-02-14T13:58:39+01:00
+date = 2025-03-09
categories = [ "langdev", "deep-dive", "low-level" ]
tags = [ "low-level", "memory", "optimization", "langdev", "interpreter" ]
-draft = true
+++
Let's explore **tagged pointers**, a clever optimization
@@ -766,6 +765,9 @@ get in touch with me at *{{< email "main@fedang.net" >}}*.
- https://simonsafar.com/2020/sbcl
- *Representing Type Information in Dinamically Typed Languages* \
https://www.cs.arizona.edu/sites/default/files/TR93-27.pdf
+- https://squoze.org
+- https://clementbera.wordpress.com/2018/11/09/64-bits-immediate-floats/
+
[^taglisp]: https://www.snellman.net/blog/archive/2017-09-04-lisp-numbers
[^lispmach]: https://en.wikipedia.org/wiki/Lisp_machine
diff --git a/content/posts/pointer-tagging/lowbits.c b/content/posts/pointer-tagging/lowbits.c
index 4d129ce..a4d864b 100644
--- a/content/posts/pointer-tagging/lowbits.c
+++ b/content/posts/pointer-tagging/lowbits.c
@@ -1,3 +1,7 @@
+// Copyright (c) 2025 Federico Angelilli
+// Licensed under the 3-Clause BSD License
+// See fedang.net/posts/pointer-tagging
+
#include <stdint.h>
#include <stdbool.h>
#include <string.h>
diff --git a/content/posts/pointer-tagging/test.c b/content/posts/pointer-tagging/test.c
index d37c3d3..86e0625 100644
--- a/content/posts/pointer-tagging/test.c
+++ b/content/posts/pointer-tagging/test.c
@@ -1,3 +1,7 @@
+// Copyright (c) 2025 Federico Angelilli
+// Licensed under the 3-Clause BSD License
+// See fedang.net/posts/pointer-tagging
+
#include <stdio.h>
#include <stdlib.h>
diff --git a/content/posts/pointer-tagging/union.c b/content/posts/pointer-tagging/union.c
index 6cba12f..6b7fa45 100644
--- a/content/posts/pointer-tagging/union.c
+++ b/content/posts/pointer-tagging/union.c
@@ -1,3 +1,7 @@
+// Copyright (c) 2025 Federico Angelilli
+// Licensed under the 3-Clause BSD License
+// See fedang.net/posts/pointer-tagging
+
#include <stdint.h>
#include <stdbool.h>
#include <string.h>