diff options
| author | Kajetan Puchalski <kajetan.puchalski@arm.com> | 2025-02-05 15:24:53 +0000 |
|---|---|---|
| committer | Amanieu d'Antras <amanieu@gmail.com> | 2025-02-24 14:22:42 +0000 |
| commit | 3b583400734faeaf5e7e13e0bfbc7fddec0f9a00 (patch) | |
| tree | f41ded04ad25dbb2d0a9b32d9ec56a92385128f0 /library/stdarch/crates/intrinsic-test/src/main.rs | |
| parent | f4a31fd6096054d7ee6ac5cd1485d81837987423 (diff) | |
| download | rust-3b583400734faeaf5e7e13e0bfbc7fddec0f9a00.tar.gz rust-3b583400734faeaf5e7e13e0bfbc7fddec0f9a00.zip | |
intrinsic-test: Print C++ float16_t in hex
Upstream Rust currently does not support printing f16s in decimal. For the intrinsics tests to work, make C++ print float16_t in the same format. Can be droppen once https://github.com/rust-lang/rust/pull/127013 is merged.
Diffstat (limited to 'library/stdarch/crates/intrinsic-test/src/main.rs')
| -rw-r--r-- | library/stdarch/crates/intrinsic-test/src/main.rs | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/library/stdarch/crates/intrinsic-test/src/main.rs b/library/stdarch/crates/intrinsic-test/src/main.rs index 57df40bb2fd..a64e264d8b1 100644 --- a/library/stdarch/crates/intrinsic-test/src/main.rs +++ b/library/stdarch/crates/intrinsic-test/src/main.rs @@ -114,6 +114,15 @@ std::ostream& operator<<(std::ostream& os, poly128_t value) {{ }} #endif +std::ostream& operator<<(std::ostream& os, float16_t value) {{ + uint16_t temp = 0; + memcpy(&temp, &value, sizeof(float16_t)); + std::stringstream ss; + ss << "0x" << std::setfill('0') << std::setw(4) << std::hex << temp; + os << ss.str(); + return os; +}} + {arglists} int main(int argc, char **argv) {{ |
