Skip to content

Commit

Permalink
Revert irrelevant changes
Browse files Browse the repository at this point in the history
  • Loading branch information
jk-jeon committed Aug 14, 2023
1 parent b0ba75e commit 9e0954d
Showing 1 changed file with 1 addition and 62 deletions.
63 changes: 1 addition & 62 deletions subproject/meta/source/sandbox.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -16,66 +16,5 @@
// KIND, either express or implied.

#include "dragonbox/dragonbox_to_chars.h"
#include <iostream>
#include <fstream>
#include <limits>
#include <sstream>
#include <iomanip>

#define ECHO 0

int main() {
std::string filename;
std::size_t count = 0;
std::size_t total_count = 0;
std::size_t filenum = 0;
std::ofstream out{"9_digits_case_0.txt"};
std::uint32_t min_significand = std::numeric_limits<std::uint32_t>::max(), max_significand = 0;
#if ECHO == 1
std::stringstream ss;
#else
std::ofstream& ss = out;
#endif
for (std::uint32_t i = 0x0000'0001; i <= 0x7f7f'ffff; ++i) {
auto significand_bits = i & (0x007fffff);
auto exponent_bits = i >> 23;
auto result = jkj::dragonbox::to_decimal(
jkj::dragonbox::signed_significand_bits<float>{significand_bits}, exponent_bits,
jkj::dragonbox::policy::sign::ignore, jkj::dragonbox::policy::trailing_zero::ignore);
if (result.significand >= 1'0000'0000) {
if (++count == 500'0000) {
filename = "9_digits_case_";
filename += std::to_string(++filenum);
filename += ".txt";
out.close();
out.open(filename);
total_count += count;
count = 0;
}

if (result.significand < min_significand) {
min_significand = result.significand;
}
if (result.significand > max_significand) {
max_significand = result.significand;
}

float x;
std::memcpy(&x, &i, sizeof(float));
char buffer[32];
*jkj::dragonbox::to_chars_detail::to_chars<float,
jkj::dragonbox::default_float_traits<float>>(
result.significand, result.exponent, buffer) = '\0';
ss << buffer << " (0x" << std::hex << std::setw(8) << std::setfill('0') << i << ")\n";

#if ECHO == 1
std::cout << ss.str();
out << ss.str();
ss.clear();
#endif
}
}
std::cout << "total: " << (total_count += count) << "\n";
std::cout << "min significand: " << min_significand << "\n";
std::cout << "max significand: " << max_significand << "\n";
}
int main() {}

0 comments on commit 9e0954d

Please sign in to comment.