From 1b72e6bed05355b83683b911b115ab60751a9e0b Mon Sep 17 00:00:00 2001 From: Federico Angelilli Date: Sat, 8 Mar 2025 19:45:00 +0100 Subject: Publish article --- content/posts/pointer-tagging/highbits.c | 4 ++++ content/posts/pointer-tagging/index.md | 6 ++++-- content/posts/pointer-tagging/lowbits.c | 4 ++++ content/posts/pointer-tagging/test.c | 4 ++++ content/posts/pointer-tagging/union.c | 4 ++++ 5 files changed, 20 insertions(+), 2 deletions(-) (limited to 'content/posts') 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 #include #include 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 #include #include 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 #include 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 #include #include -- cgit v1.2.3