Fix tracing atomic instructions

Atomic instructions were calling the trace logging with the wrong element size,
causing assertion failures when tracing them. Fix this, and add atomic
instructions to the trace tests.
diff --git a/test/test-trace-reference/log-branch-colour b/test/test-trace-reference/log-branch-colour
index b329436..7caf1a4 100644
--- a/test/test-trace-reference/log-branch-colour
+++ b/test/test-trace-reference/log-branch-colour
@@ -3188,3 +3188,196 @@
 #    z5<639:512>: 0x00000000000000000000000000000000 (0.000, 0.000)
 #                                  ║               ╙─ 0x0000000000000000'0000000000000000'0000000000000000'0000000000000000 -> 0x~~~~~~~~~~~~~~~~
 #                                  ╙───────────────── 0x0000000000000000'0000000000000000'0000000000000000'0000000000000000 -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x5555555555555555 -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x55 -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x55 -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x55 -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x55 -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x55a9 -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x55a9 -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x55a9 -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x55a9 -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x555556f9 -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x555556f9 -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x555556f9 -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x555556f9 -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x555555555555b18d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x555555555555b18d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x555555555555b18d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x555555555555b18d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x8d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x8d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0xb18d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0xb18d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x5555b18d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x5555b18d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x555555555555b18d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x555555555555b18d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x95 -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x95 -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x95 -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x95 -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x469d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x469d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x469d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x469d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0003469d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0003469d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0003469d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0003469d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000003469d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000003469d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000003469d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000003469d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x469d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x469d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0003469d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0003469d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000003469d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000003469d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x469d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x469d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x469d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x469d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0003009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0003009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0003009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0003009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000469d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000469d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000469d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000469d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x469d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x469d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0000469d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0000469d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000469d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000469d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0003ff9d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0003ff9d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0003ff9d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0003ff9d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000009d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000009d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000009d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000009d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000009d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000009d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000009d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x0000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000009d -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x000000000000009d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x9d -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x0000 -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x0000 -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x0000 -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x0000 -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x00000000 -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x00000000 -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x00000000 -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x00000000 -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x0000000000000000 -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x0000000000000000 -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x0000000000000000 -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x0000000000000000 -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x00 -> 0x~~~~~~~~~~~~~~~~
+#        x0<7:0>:               0x00 -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x0000 -> 0x~~~~~~~~~~~~~~~~
+#       x0<15:0>:             0x0000 -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x00000000 -> 0x~~~~~~~~~~~~~~~~
+#       x0<31:0>:         0x00000000 -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x0000000000000000 -> 0x~~~~~~~~~~~~~~~~
+#       x0<63:0>: 0x0000000000000000 -> 0x~~~~~~~~~~~~~~~~