diff options
| author | Douglas Rumbaugh <dbr4@psu.edu> | 2024-02-08 13:10:29 -0500 |
|---|---|---|
| committer | Douglas Rumbaugh <dbr4@psu.edu> | 2024-02-08 13:10:29 -0500 |
| commit | 0f18dd8be6b20ebb8b6e5904032cc7ead305e88c (patch) | |
| tree | f4922243bb1606d452cff700f279566d8b8449b5 | |
| parent | ded1f979d101a5df37a65370f6c18803212edb66 (diff) | |
| download | dynamic-extension-0f18dd8be6b20ebb8b6e5904032cc7ead305e88c.tar.gz | |
Added compiler fence to block reordering
I'm reasonably certain that this is a compiler bug...
| -rw-r--r-- | CMakeLists.txt | 4 | ||||
| -rw-r--r-- | include/shard/ISAMTree.h | 2 |
2 files changed, 4 insertions, 2 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 5f77396..be0fb15 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -6,7 +6,7 @@ set(CMAKE_CXX_STANDARD_REQUIRED True) set(namespace "de") project("Practical Dynamic Extension" VERSION 0.1.0) -set(debug true) +set(debug false) set(tests True) set(bench true) set(old_bench False) @@ -25,7 +25,7 @@ if (debug) add_compile_options(-fsanitize=undefined) add_link_options(-fsanitize=undefined) else() - add_compile_options(-g -O3) + add_compile_options(-O3) endif() # Test build instructions diff --git a/include/shard/ISAMTree.h b/include/shard/ISAMTree.h index 33ba82f..b52887a 100644 --- a/include/shard/ISAMTree.h +++ b/include/shard/ISAMTree.h @@ -65,6 +65,8 @@ public: sizeof(Wrapped<R>), (byte**) &m_data); + asm volatile ("" ::: "memory"); + auto res = sorted_array_from_bufferview(std::move(buffer), m_data, m_bf); m_reccnt = res.record_count; m_tombstone_cnt = res.tombstone_count; |