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.
|
// SIMD operations on potentially-indeterminate Node16::index[16] bytes.
|
||||||
// Written in assembly so msan doesn't track the loads. The caller is
|
// Written in assembly because loading and operating on indeterminate values
|
||||||
// responsible for masking the returned bitfield to [0, numChildren) before
|
// is UB in C++ but well-defined in assembly. (A side effect is that msan
|
||||||
// using it.
|
// 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
|
// 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.
|
// at index i). The upper 16 bits of %eax are zero.
|
||||||
@@ -71,4 +72,15 @@ mask_in_range_16:
|
|||||||
ret
|
ret
|
||||||
.size mask_in_range_16, .-mask_in_range_16
|
.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
|
.section .note.GNU-stack,"",@progbits
|
||||||
Reference in New Issue
Block a user