Skip to content

Changes for 2017 Posts #269

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Jul 23, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions content/posts/2017-03-18-min-of-three-part-2.dj
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ data. The speedup from 435 milliseconds stated in the previous post is
due to Moore's law: I've upgraded the CPU :)

We can bring run time down by tweaking how we calculate the minimum of
three elements.
three elements:

```rust
fn min2(x: f64, y: f64) -> f64 {
Expand All @@ -84,7 +84,7 @@ minimum of two elements in the previous row can be calculated without
waiting for the preceding element in the current row to be computed.

The assembly for the main loop looks like this (AT&T syntax,
destination register on the right)
destination register on the right):

```
18.32 vmovsd -0x8(%rax,%rsi,8),%xmm1
Expand Down Expand Up @@ -149,10 +149,10 @@ For our grand plan, we need to fit a rhombus peg in a square hole:
. . . . V
```

* `id` is the index of the diagonal. There are twice as much diagonals
* `id` is the index of the diagonal. There are twice as many diagonals
as rows.
* The outer loop is over `id`.
* On each iteration we remember three columns (`d1`, `d2` `d3` in the
* On each iteration we remember three columns (`d1`, `d2`, `d3` in the
code).
* There is a phase transition once we've crossed the main diagonal.
* We can derive `iy` from the fact that `ix + iy = id`.
Expand Down
4 changes: 2 additions & 2 deletions content/posts/2017-10-21-lldb-dynamic-type.dj
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ pointer).


The implementation of this function for C++ language lives in
[ItaniumABILanguageRuntime.cpp][ItaniumRT] although, unlike C, C++ lacks a
standardized ABI, almost all compilers on all non-windows platforms use a
[ItaniumABILanguageRuntime.cpp][ItaniumRT]. Although, unlike C, C++ lacks a
standardized ABI, almost all compilers on all non-Windows platforms use a
[specific ABI][ABI], confusingly called Itanium (after a now effectively dead
64-bit CPU architecture).