Compare commits
2
Commits
79ae91e7d3
...
0b12a037c4
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0b12a037c4 | ||
|
|
5c16b8ee90 |
+15
-3
@@ -1,7 +1,8 @@
|
||||
// SIMD operations on potentially-indeterminate Node16::index[16] bytes.
|
||||
// Written in assembly so msan doesn't track the loads. The caller is
|
||||
// responsible for masking the returned bitfield to [0, numChildren) before
|
||||
// using it.
|
||||
// Written in assembly because loading and operating on indeterminate values
|
||||
// is UB in C++ but well-defined in assembly. (A side effect is that msan
|
||||
// doesn't track the loads.) The caller is responsible for masking the
|
||||
// returned bitfield to [0, numChildren) before using it.
|
||||
//
|
||||
// All functions return a 16-bit bitmask in %eax (bit i set = condition true
|
||||
// at index i). The upper 16 bits of %eax are zero.
|
||||
@@ -71,4 +72,15 @@ mask_in_range_16:
|
||||
ret
|
||||
.size mask_in_range_16, .-mask_in_range_16
|
||||
|
||||
.section .note.gnu.property,"a",@note
|
||||
.p2align 3, 0x0
|
||||
.long 4
|
||||
.long 16
|
||||
.long 5
|
||||
.asciz "GNU"
|
||||
.long 0xc0000002
|
||||
.long 4
|
||||
.long 0x3
|
||||
.p2align 3, 0x0
|
||||
|
||||
.section .note.GNU-stack,"",@progbits
|
||||
Reference in New Issue
Block a user