aboutsummaryrefslogtreecommitdiffstats
path: root/backends/aiger/xaiger.cc
diff options
context:
space:
mode:
authorEddie Hung <eddie@fpgeh.com>2019-06-14 12:00:02 -0700
committerEddie Hung <eddie@fpgeh.com>2019-06-14 12:00:02 -0700
commit97d265637505a239e3d328a3ee7e26c6fd5d6744 (patch)
tree14e63b5bbae0dfe2ac47ff3e1b4a5a1d959e4be4 /backends/aiger/xaiger.cc
parent2e34859a6b9780d6dc2df28dabcab893b5f4ce4a (diff)
downloadyosys-97d265637505a239e3d328a3ee7e26c6fd5d6744.tar.gz
yosys-97d265637505a239e3d328a3ee7e26c6fd5d6744.tar.bz2
yosys-97d265637505a239e3d328a3ee7e26c6fd5d6744.zip
Resolve comments from @daveshah1
Diffstat (limited to 'backends/aiger/xaiger.cc')
-rw-r--r--backends/aiger/xaiger.cc22
1 files changed, 8 insertions, 14 deletions
diff --git a/backends/aiger/xaiger.cc b/backends/aiger/xaiger.cc
index 1e70f3230..42a2233e4 100644
--- a/backends/aiger/xaiger.cc
+++ b/backends/aiger/xaiger.cc
@@ -683,16 +683,18 @@ struct XAigerWriter
f << "c";
if (!box_list.empty() || !ff_bits.empty()) {
- std::stringstream h_buffer;
- auto write_h_buffer = [&h_buffer](int i32) {
+ auto write_buffer = [](std::stringstream &buffer, int i32) {
// TODO: Don't assume we're on little endian
#ifdef _WIN32
- int i32_be = _byteswap_ulong(i32);
+ int32_t i32_be = _byteswap_ulong(i32);
#else
- int i32_be = __builtin_bswap32(i32);
+ int32_t i32_be = __builtin_bswap32(i32);
#endif
- h_buffer.write(reinterpret_cast<const char*>(&i32_be), sizeof(i32_be));
+ buffer.write(reinterpret_cast<const char*>(&i32_be), sizeof(i32_be));
};
+
+ std::stringstream h_buffer;
+ auto write_h_buffer = std::bind(write_buffer, std::ref(h_buffer), std::placeholders::_1);
write_h_buffer(1);
log_debug("ciNum = %zu\n", input_bits.size() + ff_bits.size() + ci_bits.size());
write_h_buffer(input_bits.size() + ff_bits.size() + ci_bits.size());
@@ -782,15 +784,7 @@ struct XAigerWriter
/*if (!ff_bits.empty())*/ {
std::stringstream r_buffer;
- auto write_r_buffer = [&r_buffer](int i32) {
- // TODO: Don't assume we're on little endian
-#ifdef _WIN32
- int i32_be = _byteswap_ulong(i32);
-#else
- int i32_be = __builtin_bswap32(i32);
-#endif
- r_buffer.write(reinterpret_cast<const char*>(&i32_be), sizeof(i32_be));
- };
+ auto write_r_buffer = std::bind(write_buffer, std::ref(r_buffer), std::placeholders::_1);
log_debug("flopNum = %zu\n", ff_bits.size());
write_r_buffer(ff_bits.size());
int mergeability_class = 1;