diff --git a/VTIL-Architecture/VTIL-Architecture.vcxproj.filters b/VTIL-Architecture/VTIL-Architecture.vcxproj.filters
index 9f13a83..0e692d5 100644
--- a/VTIL-Architecture/VTIL-Architecture.vcxproj.filters
+++ b/VTIL-Architecture/VTIL-Architecture.vcxproj.filters
@@ -7,9 +7,6 @@
{fc75d30a-c12b-4902-a7bb-c665c2a9043c}
-
- {5111b44f-7760-4ccf-9f25-5c375a9480f7}
-
{da55a262-7d21-4ce0-b5ef-c2de31a52d12}
@@ -22,19 +19,22 @@
{6ba6b482-58aa-46cd-ad58-c0eef36c9333}
+
+ {5111b44f-7760-4ccf-9f25-5c375a9480f7}
+
Architecture
- Instruction Stream
+ Routine
- Instruction Stream
+ Routine
- Instruction Stream
+ Routine
Miscellaneous
@@ -49,7 +49,7 @@
Architecture
- Instruction Stream
+ Routine
SymEx Integration
@@ -82,13 +82,13 @@
SymEx Integration
- Instruction Stream
+ Routine
Architecture
- Instruction Stream
+ Routine
SymEx Integration
@@ -99,16 +99,16 @@
Architecture
- Instruction Stream
+ Routine
- Instruction Stream
+ Routine
- Instruction Stream
+ Routine
- Instruction Stream
+ Routine
SymEx Integration
diff --git a/VTIL-Architecture/vm/interface.cpp b/VTIL-Architecture/vm/interface.cpp
index 994032b..a347482 100644
--- a/VTIL-Architecture/vm/interface.cpp
+++ b/VTIL-Architecture/vm/interface.cpp
@@ -211,7 +211,7 @@ namespace vtil
{
// Until the iterator points at the end of the block:
//
- for ( ; !it.is_end(); it++ )
+ for ( ; !it.is_end(); ++it )
{
// If we could not virtualize the instruction, break.
//
diff --git a/VTIL-Architecture/vm/interface.hpp b/VTIL-Architecture/vm/interface.hpp
index a1f6d08..e0595df 100644
--- a/VTIL-Architecture/vm/interface.hpp
+++ b/VTIL-Architecture/vm/interface.hpp
@@ -33,7 +33,7 @@ namespace vtil
{
// List of reasons that might cause the virtual machine to exit.
//
- enum class vm_exit_reason
+ enum class vm_exit_reason : uint8_t
{
none = 0,
stream_end = 0,
diff --git a/VTIL-Compiler/optimizer/stack_pinning_pass.cpp b/VTIL-Compiler/optimizer/stack_pinning_pass.cpp
index 7019786..13db622 100644
--- a/VTIL-Compiler/optimizer/stack_pinning_pass.cpp
+++ b/VTIL-Compiler/optimizer/stack_pinning_pass.cpp
@@ -180,30 +180,6 @@ namespace vtil::optimizer
}
}
}
-
- // If cross block optimization, check if we can merge stacks.
- //
- if ( xblock )
- {
- bool merge_bwd = !blk->next.empty() && blk->stream.size() && blk->stream.front().sp_offset != 0;
- for ( auto prev : blk->prev )
- merge_bwd &= prev->next.size() == 1;
-
- bool merge_fwd = !blk->next.empty() && blk->sp_offset != 0;
- for ( auto next : blk->next )
- merge_fwd &= next->prev.size() == 1;
-
- if ( merge_fwd )
- {
-
- }
-
-
-
- }
-
-
-
return counter;
}
};
\ No newline at end of file
diff --git a/VTIL-Compiler/optimizer/symbolic_rewrite_pass.cpp b/VTIL-Compiler/optimizer/symbolic_rewrite_pass.cpp
index 4d4a3ec..8b9c5c7 100644
--- a/VTIL-Compiler/optimizer/symbolic_rewrite_pass.cpp
+++ b/VTIL-Compiler/optimizer/symbolic_rewrite_pass.cpp
@@ -34,21 +34,6 @@ namespace vtil::optimizer
//
size_t isymbolic_rewrite_pass::pass( basic_block* blk, bool xblock )
{
- // Determine the temporary sizes in the block.
- //
- std::map, bitcnt_t> temp_sizes;
- for ( auto& ins : blk->stream )
- {
- for ( auto& op : ins.operands )
- {
- if ( op.is_register() && op.reg().is_local() )
- {
- bitcnt_t& sz = temp_sizes[ { op.reg().flags, op.reg().combined_id } ];
- sz = std::max( sz, op.reg().bit_count + op.reg().bit_offset );
- }
- }
- }
-
// Create an instrumented symbolic virtual machine and hook execution to exit at
// instructions that cannot be executed out-of-order.
//