diff --git a/CMakeLists.txt b/CMakeLists.txt index 725d5ba3..4ef3b11d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -476,55 +476,126 @@ foreach(file ${diff_tests_cruxbc_big}) ) endforeach() -# loops over ae_assert_files and run "ae $bc_file" -file(GLOB ae_assert_files RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "${CMAKE_CURRENT_SOURCE_DIR}/test_cases_bc/ae_assert_tests/*.bc") - -foreach(filename ${ae_assert_files}) +# ============================================================================= +# AE tests using ae_pass (dense+sparse) and ae_dense_pass (dense only) +# ============================================================================= +# ae_pass/ — tests that pass in both dense and sparse modes +# ae_dense_pass/ — tests that pass in dense only (sparse precision loss expected) + +# --- ae_assert tests --- +# ae_pass: dense + sparse +file(GLOB ae_assert_pass_files RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "${CMAKE_CURRENT_SOURCE_DIR}/ae_pass/ae_assert_tests/*.bc") +foreach(filename ${ae_assert_pass_files}) add_test( - NAME ae_assert_tests/${filename} + NAME ae-dense_assert_tests/${filename} + COMMAND ae ${CMAKE_CURRENT_SOURCE_DIR}/${filename} + WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/bin + ) + add_test( + NAME ae-sparse_assert_tests/${filename} + COMMAND ae -sparse ${CMAKE_CURRENT_SOURCE_DIR}/${filename} + WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/bin + ) +endforeach() +# ae_dense_pass: dense only +file(GLOB ae_assert_dense_files RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "${CMAKE_CURRENT_SOURCE_DIR}/ae_dense_pass/ae_assert_tests/*.bc") +foreach(filename ${ae_assert_dense_files}) + add_test( + NAME ae-dense_assert_tests/${filename} COMMAND ae ${CMAKE_CURRENT_SOURCE_DIR}/${filename} WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/bin ) endforeach() -# loops over ae_overflow_files and run "ae -overflow $bc_file" -file(GLOB ae_overflow_files RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "${CMAKE_CURRENT_SOURCE_DIR}/test_cases_bc/ae_overflow_tests/*.bc") - -foreach(filename ${ae_overflow_files}) +# --- ae_overflow tests --- +# ae_pass: dense + sparse +file(GLOB ae_overflow_pass_files RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "${CMAKE_CURRENT_SOURCE_DIR}/ae_pass/ae_overflow_tests/*.bc") +foreach(filename ${ae_overflow_pass_files}) add_test( - NAME ae_overflow_tests/${filename} + NAME ae-dense_overflow_tests/${filename} COMMAND ae -overflow -field-limit=1024 ${CMAKE_CURRENT_SOURCE_DIR}/${filename} WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/bin ) add_test( - NAME ae_recursion_tests/${filename}-widen-narrow + NAME ae-dense_overflow_tests/${filename}-widen-narrow + COMMAND ae -overflow -handle-recur=widen-narrow -field-limit=1024 ${CMAKE_CURRENT_SOURCE_DIR}/${filename} + WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/bin + ) + add_test( + NAME ae-sparse_overflow_tests/${filename} + COMMAND ae -sparse -overflow -field-limit=1024 ${CMAKE_CURRENT_SOURCE_DIR}/${filename} + WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/bin + ) + add_test( + NAME ae-sparse_overflow_tests/${filename}-widen-narrow + COMMAND ae -sparse -overflow -handle-recur=widen-narrow -field-limit=1024 ${CMAKE_CURRENT_SOURCE_DIR}/${filename} + WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/bin + ) +endforeach() +# ae_dense_pass: dense only +file(GLOB ae_overflow_dense_files RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "${CMAKE_CURRENT_SOURCE_DIR}/ae_dense_pass/ae_overflow_tests/*.bc") +foreach(filename ${ae_overflow_dense_files}) + add_test( + NAME ae-dense_overflow_tests/${filename} + COMMAND ae -overflow -field-limit=1024 ${CMAKE_CURRENT_SOURCE_DIR}/${filename} + WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/bin + ) + add_test( + NAME ae-dense_overflow_tests/${filename}-widen-narrow COMMAND ae -overflow -handle-recur=widen-narrow -field-limit=1024 ${CMAKE_CURRENT_SOURCE_DIR}/${filename} WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/bin ) endforeach() -# loops over ae_nullptr_deref_files and run "ae -null-deref $bc_file" -file(GLOB ae_nullptr_deref_files RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "${CMAKE_CURRENT_SOURCE_DIR}/test_cases_bc/ae_nullptr_deref_tests/*.bc") - -foreach(filename ${ae_nullptr_deref_files}) +# --- ae_nullptr_deref tests --- +# ae_pass: dense + sparse +file(GLOB ae_nullptr_pass_files RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "${CMAKE_CURRENT_SOURCE_DIR}/ae_pass/ae_nullptr_deref_tests/*.bc") +foreach(filename ${ae_nullptr_pass_files}) add_test( - NAME ae_nullptr_deref_tests/${filename} + NAME ae-dense_nullptr_deref_tests/${filename} + COMMAND ae -null-deref ${CMAKE_CURRENT_SOURCE_DIR}/${filename} + WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/bin + ) + add_test( + NAME ae-sparse_nullptr_deref_tests/${filename} + COMMAND ae -sparse -null-deref ${CMAKE_CURRENT_SOURCE_DIR}/${filename} + WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/bin + ) +endforeach() +# ae_dense_pass: dense only +file(GLOB ae_nullptr_dense_files RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "${CMAKE_CURRENT_SOURCE_DIR}/ae_dense_pass/ae_nullptr_deref_tests/*.bc") +foreach(filename ${ae_nullptr_dense_files}) + add_test( + NAME ae-dense_nullptr_deref_tests/${filename} COMMAND ae -null-deref ${CMAKE_CURRENT_SOURCE_DIR}/${filename} WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/bin ) endforeach() -# loops over ae_recursion_files and run "ae -overflow $bc_file" under 3 recursion modes -file(GLOB ae_recursion_files RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "${CMAKE_CURRENT_SOURCE_DIR}/test_cases_bc/ae_recursion_tests/*.bc") - -foreach(filename ${ae_recursion_files}) +# --- ae_recursion tests --- +# ae_pass: dense + sparse (currently empty — all recursion tests fail in sparse) +file(GLOB ae_recursion_pass_files RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "${CMAKE_CURRENT_SOURCE_DIR}/ae_pass/ae_recursion_tests/*.bc") +foreach(filename ${ae_recursion_pass_files}) add_test( - NAME ae_recursion_tests/${filename}-widen-narrow + NAME ae-dense_recursion_tests/${filename}-widen-narrow + COMMAND ae -overflow -handle-recur=widen-narrow -field-limit=1024 -widen-delay=10 ${CMAKE_CURRENT_SOURCE_DIR}/${filename} + WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/bin + ) + add_test( + NAME ae-sparse_recursion_tests/${filename}-widen-narrow + COMMAND ae -sparse -overflow -handle-recur=widen-narrow -field-limit=1024 -widen-delay=10 ${CMAKE_CURRENT_SOURCE_DIR}/${filename} + WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/bin + ) +endforeach() +# ae_dense_pass: dense only +file(GLOB ae_recursion_dense_files RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "${CMAKE_CURRENT_SOURCE_DIR}/ae_dense_pass/ae_recursion_tests/*.bc") +foreach(filename ${ae_recursion_dense_files}) + add_test( + NAME ae-dense_recursion_tests/${filename}-widen-narrow COMMAND ae -overflow -handle-recur=widen-narrow -field-limit=1024 -widen-delay=10 ${CMAKE_CURRENT_SOURCE_DIR}/${filename} WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/bin ) endforeach() - ## symbolic abstraction tests (ctest -R symabs -VV) set(cmd "ae -symabs") diff --git a/generate_bc.sh b/generate_bc.sh index 22a81fe6..97872773 100755 --- a/generate_bc.sh +++ b/generate_bc.sh @@ -1,88 +1,85 @@ #!/bin/sh -# Generate bitcode for the .c/.cpp tests in $test_dirs. +# Generate bitcode for the .c/.cpp tests. +# Each entry in all_dirs is "src_subpath:bc_subpath". +# - Non-AE tests: src under src/, bc under test_cases_bc/ +# - AE tests: src under src/ae_pass/ or src/ae_dense_pass/, +# bc under ae_pass/ or ae_dense_pass/ sysOS=$(uname -s) -test_dirs=" - basic_c_tests - basic_cpp_tests - complex_tests - cpp_types - cs_tests - fs_tests - mem_leak - double_free - mta - non_annotated_tests - path_tests - objtype_tests - ae_overflow_tests - ae_assert_tests - ae_nullptr_deref_tests - ae_recursion_tests - ae_wto_assert +all_dirs=" + basic_c_tests:test_cases_bc/basic_c_tests + basic_cpp_tests:test_cases_bc/basic_cpp_tests + complex_tests:test_cases_bc/complex_tests + cpp_types:test_cases_bc/cpp_types + cs_tests:test_cases_bc/cs_tests + fs_tests:test_cases_bc/fs_tests + mem_leak:test_cases_bc/mem_leak + double_free:test_cases_bc/double_free + mta:test_cases_bc/mta + non_annotated_tests:test_cases_bc/non_annotated_tests + path_tests:test_cases_bc/path_tests + objtype_tests:test_cases_bc/objtype_tests + ae_pass/ae_assert_tests:ae_pass/ae_assert_tests + ae_pass/ae_nullptr_deref_tests:ae_pass/ae_nullptr_deref_tests + ae_pass/ae_overflow_tests:ae_pass/ae_overflow_tests + ae_pass/ae_recursion_tests:ae_pass/ae_recursion_tests + ae_dense_pass/ae_assert_tests:ae_dense_pass/ae_assert_tests + ae_dense_pass/ae_nullptr_deref_tests:ae_dense_pass/ae_nullptr_deref_tests + ae_dense_pass/ae_overflow_tests:ae_dense_pass/ae_overflow_tests + ae_dense_pass/ae_recursion_tests:ae_dense_pass/ae_recursion_tests " - root=$(cd "$(dirname "$0")"; pwd) -bc_path="$root/test_cases_bc" if [[ $sysOS == "Linux" ]];then ######## -# Remove previous bc folder and create a new one. +# Remove previous bc folders and create new ones. ######## - -git rm -rf "$bc_path" -mkdir -p "$bc_path" +git rm -rf "$root/test_cases_bc" +git rm -rf "$root/ae_pass" 2>/dev/null || true +git rm -rf "$root/ae_dense_pass" 2>/dev/null || true +mkdir -p "$root/test_cases_bc" ######## -# Loops through each folder in test_dirs. +# Loops through each entry in all_dirs. ######## -for td in $test_dirs; do - ######## - # Creates a directory for each listed folder. - ######## - bc_td="$bc_path/$td" +for entry in $all_dirs; do + src_sub="${entry%%:*}" + bc_sub="${entry##*:}" + + full_td="$root/src/$src_sub" + bc_td="$root/$bc_sub" + + # Skip if source dir doesn't exist + [ -d "$full_td" ] || continue + mkdir -p "$bc_td" - ######## - # Full path to the test dir. - ######## - full_td="$root/src/$td" + # Determine if this is an AE test directory + is_ae=false + case "$src_sub" in + ae_pass/*|ae_dense_pass/*) is_ae=true ;; + esac + + # Extract the leaf directory name for mem_leak check + leaf="${src_sub##*/}" - ######## - # Loops through each file within the folder. - ######## for c_f in "$full_td/"*; do - ######## - # Obtains the text after the '.'. - ######## ext=${c_f##*.} - ######## - # We only look for .c/.cpp files. Check $ext = $f in case the filename is c/cpp. - ######## if [ \( "$ext" != "cpp" -a "$ext" != "c" \) -o "$ext" = "$f" ] then continue fi - ######## - # The output .bc file name. - ######## - bc_f="$bc_td/`basename "$c_f"`.bc" + bc_f="$bc_td/$(basename "$c_f").bc" - ######## - # If the .bc is newer than the .c/.cpp, then no need to compile. - ######## if [ "$bc_f" -nt "$c_f" ]; then continue fi - ######## - # Set up the compiler to clang if the file extension is c else clang++. - ######## compiler="" if [ "$ext" = "c" ]; then compiler="clang" @@ -93,25 +90,10 @@ for td in $test_dirs; do echo "$0: Compiling '$c_f'" echo "$0: to '$bc_f'" - ######## - # created a .ll, let's make it .bc, as the filename suggests. - ######## - if test $td == "mem_leak" - then - $compiler -Wno-everything -S -emit-llvm -fno-discard-value-names -g -I"$root" "$c_f" -o "$bc_f" - # td = "ae_assert_tests" or "ae_overflow_tests" - elif test $td == "ae_assert_tests" - then - $compiler -Wno-everything -S -c -Xclang -DINCLUDEMAIN -Wno-implicit-function-declaration -fno-discard-value-names -g -emit-llvm -I"$root" "$c_f" -o "$bc_f" - elif test $td == "ae_overflow_tests" - then - $compiler -Wno-everything -S -c -Xclang -DINCLUDEMAIN -Wno-implicit-function-declaration -fno-discard-value-names -g -emit-llvm -I"$root" "$c_f" -o "$bc_f" - elif test $td == "ae_recursion_tests" - then - $compiler -Wno-everything -S -c -Xclang -DINCLUDEMAIN -Wno-implicit-function-declaration -fno-discard-value-names -g -emit-llvm -I"$root" "$c_f" -o "$bc_f" - elif test $td == "ae_wto_assert" - then + if [ "$is_ae" = true ]; then $compiler -Wno-everything -S -c -Xclang -DINCLUDEMAIN -Wno-implicit-function-declaration -fno-discard-value-names -g -emit-llvm -I"$root" "$c_f" -o "$bc_f" + elif test "$leaf" == "mem_leak"; then + $compiler -Wno-everything -S -emit-llvm -fno-discard-value-names -g -I"$root" "$c_f" -o "$bc_f" else $compiler -Wno-everything -S -emit-llvm -fno-discard-value-names -I"$root" "$c_f" -o "$bc_f" fi @@ -120,4 +102,4 @@ for td in $test_dirs; do done done -fi \ No newline at end of file +fi diff --git a/src/ae_assert_tests/BASIC_array_2d_0-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_array_2d_0-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_array_2d_0-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_array_2d_0-0.c diff --git a/src/ae_assert_tests/BASIC_array_func_0-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_array_func_0-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_array_func_0-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_array_func_0-0.c diff --git a/src/ae_assert_tests/BASIC_array_func_3-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_array_func_3-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_array_func_3-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_array_func_3-0.c diff --git a/src/ae_assert_tests/BASIC_array_func_4-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_array_func_4-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_array_func_4-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_array_func_4-0.c diff --git a/src/ae_assert_tests/BASIC_array_func_6-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_array_func_6-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_array_func_6-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_array_func_6-0.c diff --git a/src/ae_assert_tests/BASIC_array_int_0-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_array_int_0-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_array_int_0-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_array_int_0-0.c diff --git a/src/ae_assert_tests/BASIC_array_varIdx_1-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_array_varIdx_1-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_array_varIdx_1-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_array_varIdx_1-0.c diff --git a/src/ae_assert_tests/BASIC_arraycopy1-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_arraycopy1-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_arraycopy1-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_arraycopy1-0.c diff --git a/src/ae_assert_tests/BASIC_arraycopy2-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_arraycopy2-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_arraycopy2-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_arraycopy2-0.c diff --git a/src/ae_assert_tests/BASIC_assign_0-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_assign_0-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_assign_0-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_assign_0-0.c diff --git a/src/ae_assert_tests/BASIC_assign_2-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_assign_2-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_assign_2-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_assign_2-0.c diff --git a/src/ae_assert_tests/BASIC_assign_3-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_assign_3-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_assign_3-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_assign_3-0.c diff --git a/src/ae_assert_tests/BASIC_bi_add_0-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_bi_add_0-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_bi_add_0-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_bi_add_0-0.c diff --git a/src/ae_assert_tests/BASIC_bi_add_1-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_bi_add_1-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_bi_add_1-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_bi_add_1-0.c diff --git a/src/ae_assert_tests/BASIC_bi_div_0-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_bi_div_0-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_bi_div_0-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_bi_div_0-0.c diff --git a/src/ae_assert_tests/BASIC_bi_mix_0-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_bi_mix_0-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_bi_mix_0-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_bi_mix_0-0.c diff --git a/src/ae_assert_tests/BASIC_br_nd_1-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_br_nd_1-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_br_nd_1-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_br_nd_1-0.c diff --git a/src/ae_assert_tests/BASIC_br_true_0-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_br_true_0-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_br_true_0-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_br_true_0-0.c diff --git a/src/ae_assert_tests/BASIC_funcall_ref_0-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_funcall_ref_0-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_funcall_ref_0-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_funcall_ref_0-0.c diff --git a/src/ae_assert_tests/BASIC_funcall_ref_1-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_funcall_ref_1-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_funcall_ref_1-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_funcall_ref_1-0.c diff --git a/src/ae_assert_tests/BASIC_funcall_ref_2-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_funcall_ref_2-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_funcall_ref_2-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_funcall_ref_2-0.c diff --git a/src/ae_assert_tests/BASIC_ptr_assign_0-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_ptr_assign_0-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_ptr_assign_0-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_ptr_assign_0-0.c diff --git a/src/ae_assert_tests/BASIC_ptr_call1-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_ptr_call1-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_ptr_call1-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_ptr_call1-0.c diff --git a/src/ae_assert_tests/BASIC_ptr_call2-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_ptr_call2-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_ptr_call2-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_ptr_call2-0.c diff --git a/src/ae_assert_tests/BASIC_ptr_func_0-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_ptr_func_0-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_ptr_func_0-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_ptr_func_0-0.c diff --git a/src/ae_assert_tests/BASIC_ptr_func_1-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_ptr_func_1-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_ptr_func_1-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_ptr_func_1-0.c diff --git a/src/ae_assert_tests/BASIC_ptr_func_4-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_ptr_func_4-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_ptr_func_4-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_ptr_func_4-0.c diff --git a/src/ae_assert_tests/BASIC_ptr_func_6-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_ptr_func_6-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_ptr_func_6-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_ptr_func_6-0.c diff --git a/src/ae_assert_tests/BASIC_struct_array_0-0.c b/src/ae_dense_pass/ae_assert_tests/BASIC_struct_array_0-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_struct_array_0-0.c rename to src/ae_dense_pass/ae_assert_tests/BASIC_struct_array_0-0.c diff --git a/src/ae_assert_tests/INTERVAL_test_12-0.c b/src/ae_dense_pass/ae_assert_tests/INTERVAL_test_12-0.c similarity index 100% rename from src/ae_assert_tests/INTERVAL_test_12-0.c rename to src/ae_dense_pass/ae_assert_tests/INTERVAL_test_12-0.c diff --git a/src/ae_assert_tests/INTERVAL_test_13-0.c b/src/ae_dense_pass/ae_assert_tests/INTERVAL_test_13-0.c similarity index 100% rename from src/ae_assert_tests/INTERVAL_test_13-0.c rename to src/ae_dense_pass/ae_assert_tests/INTERVAL_test_13-0.c diff --git a/src/ae_assert_tests/INTERVAL_test_14-0.c b/src/ae_dense_pass/ae_assert_tests/INTERVAL_test_14-0.c similarity index 100% rename from src/ae_assert_tests/INTERVAL_test_14-0.c rename to src/ae_dense_pass/ae_assert_tests/INTERVAL_test_14-0.c diff --git a/src/ae_assert_tests/INTERVAL_test_15-0.c b/src/ae_dense_pass/ae_assert_tests/INTERVAL_test_15-0.c similarity index 100% rename from src/ae_assert_tests/INTERVAL_test_15-0.c rename to src/ae_dense_pass/ae_assert_tests/INTERVAL_test_15-0.c diff --git a/src/ae_assert_tests/INTERVAL_test_16-0.c b/src/ae_dense_pass/ae_assert_tests/INTERVAL_test_16-0.c similarity index 100% rename from src/ae_assert_tests/INTERVAL_test_16-0.c rename to src/ae_dense_pass/ae_assert_tests/INTERVAL_test_16-0.c diff --git a/src/ae_assert_tests/INTERVAL_test_19-0.c b/src/ae_dense_pass/ae_assert_tests/INTERVAL_test_19-0.c similarity index 100% rename from src/ae_assert_tests/INTERVAL_test_19-0.c rename to src/ae_dense_pass/ae_assert_tests/INTERVAL_test_19-0.c diff --git a/src/ae_assert_tests/INTERVAL_test_2-0.c b/src/ae_dense_pass/ae_assert_tests/INTERVAL_test_2-0.c similarity index 100% rename from src/ae_assert_tests/INTERVAL_test_2-0.c rename to src/ae_dense_pass/ae_assert_tests/INTERVAL_test_2-0.c diff --git a/src/ae_assert_tests/INTERVAL_test_20-0.c b/src/ae_dense_pass/ae_assert_tests/INTERVAL_test_20-0.c similarity index 100% rename from src/ae_assert_tests/INTERVAL_test_20-0.c rename to src/ae_dense_pass/ae_assert_tests/INTERVAL_test_20-0.c diff --git a/src/ae_assert_tests/INTERVAL_test_36-1-0.c b/src/ae_dense_pass/ae_assert_tests/INTERVAL_test_36-1-0.c similarity index 100% rename from src/ae_assert_tests/INTERVAL_test_36-1-0.c rename to src/ae_dense_pass/ae_assert_tests/INTERVAL_test_36-1-0.c diff --git a/src/ae_assert_tests/INTERVAL_test_49-0.c b/src/ae_dense_pass/ae_assert_tests/INTERVAL_test_49-0.c similarity index 100% rename from src/ae_assert_tests/INTERVAL_test_49-0.c rename to src/ae_dense_pass/ae_assert_tests/INTERVAL_test_49-0.c diff --git a/src/ae_assert_tests/INTERVAL_test_6-0.c b/src/ae_dense_pass/ae_assert_tests/INTERVAL_test_6-0.c similarity index 100% rename from src/ae_assert_tests/INTERVAL_test_6-0.c rename to src/ae_dense_pass/ae_assert_tests/INTERVAL_test_6-0.c diff --git a/src/ae_assert_tests/INTERVAL_test_8-0.c b/src/ae_dense_pass/ae_assert_tests/INTERVAL_test_8-0.c similarity index 100% rename from src/ae_assert_tests/INTERVAL_test_8-0.c rename to src/ae_dense_pass/ae_assert_tests/INTERVAL_test_8-0.c diff --git a/src/ae_assert_tests/INTERVAL_test_9-0.c b/src/ae_dense_pass/ae_assert_tests/INTERVAL_test_9-0.c similarity index 100% rename from src/ae_assert_tests/INTERVAL_test_9-0.c rename to src/ae_dense_pass/ae_assert_tests/INTERVAL_test_9-0.c diff --git a/src/ae_assert_tests/LOOP_for01-0.c b/src/ae_dense_pass/ae_assert_tests/LOOP_for01-0.c similarity index 100% rename from src/ae_assert_tests/LOOP_for01-0.c rename to src/ae_dense_pass/ae_assert_tests/LOOP_for01-0.c diff --git a/src/ae_assert_tests/LOOP_for_call-0.c b/src/ae_dense_pass/ae_assert_tests/LOOP_for_call-0.c similarity index 100% rename from src/ae_assert_tests/LOOP_for_call-0.c rename to src/ae_dense_pass/ae_assert_tests/LOOP_for_call-0.c diff --git a/src/ae_assert_tests/LOOP_for_inc-0.c b/src/ae_dense_pass/ae_assert_tests/LOOP_for_inc-0.c similarity index 100% rename from src/ae_assert_tests/LOOP_for_inc-0.c rename to src/ae_dense_pass/ae_assert_tests/LOOP_for_inc-0.c diff --git a/src/ae_assert_tests/LOOP_while01-0.c b/src/ae_dense_pass/ae_assert_tests/LOOP_while01-0.c similarity index 100% rename from src/ae_assert_tests/LOOP_while01-0.c rename to src/ae_dense_pass/ae_assert_tests/LOOP_while01-0.c diff --git a/src/ae_assert_tests/cwe121_char_alloc-0.c b/src/ae_dense_pass/ae_assert_tests/cwe121_char_alloc-0.c similarity index 100% rename from src/ae_assert_tests/cwe121_char_alloc-0.c rename to src/ae_dense_pass/ae_assert_tests/cwe121_char_alloc-0.c diff --git a/src/ae_assert_tests/cwe121_int64_alloc-0.c b/src/ae_dense_pass/ae_assert_tests/cwe121_int64_alloc-0.c similarity index 100% rename from src/ae_assert_tests/cwe121_int64_alloc-0.c rename to src/ae_dense_pass/ae_assert_tests/cwe121_int64_alloc-0.c diff --git a/src/ae_assert_tests/cwe121_int_alloc-0.c b/src/ae_dense_pass/ae_assert_tests/cwe121_int_alloc-0.c similarity index 100% rename from src/ae_assert_tests/cwe121_int_alloc-0.c rename to src/ae_dense_pass/ae_assert_tests/cwe121_int_alloc-0.c diff --git a/src/ae_assert_tests/cwe121_struct_alloc-0.c b/src/ae_dense_pass/ae_assert_tests/cwe121_struct_alloc-0.c similarity index 100% rename from src/ae_assert_tests/cwe121_struct_alloc-0.c rename to src/ae_dense_pass/ae_assert_tests/cwe121_struct_alloc-0.c diff --git a/src/ae_assert_tests/wto_assert_01.c b/src/ae_dense_pass/ae_assert_tests/wto_assert_01.c similarity index 100% rename from src/ae_assert_tests/wto_assert_01.c rename to src/ae_dense_pass/ae_assert_tests/wto_assert_01.c diff --git a/src/ae_assert_tests/wto_assert_02.c b/src/ae_dense_pass/ae_assert_tests/wto_assert_02.c similarity index 100% rename from src/ae_assert_tests/wto_assert_02.c rename to src/ae_dense_pass/ae_assert_tests/wto_assert_02.c diff --git a/src/ae_assert_tests/wto_assert_03.c b/src/ae_dense_pass/ae_assert_tests/wto_assert_03.c similarity index 100% rename from src/ae_assert_tests/wto_assert_03.c rename to src/ae_dense_pass/ae_assert_tests/wto_assert_03.c diff --git a/src/ae_assert_tests/wto_assert_04.c b/src/ae_dense_pass/ae_assert_tests/wto_assert_04.c similarity index 100% rename from src/ae_assert_tests/wto_assert_04.c rename to src/ae_dense_pass/ae_assert_tests/wto_assert_04.c diff --git a/src/ae_assert_tests/wto_assert_05.c b/src/ae_dense_pass/ae_assert_tests/wto_assert_05.c similarity index 100% rename from src/ae_assert_tests/wto_assert_05.c rename to src/ae_dense_pass/ae_assert_tests/wto_assert_05.c diff --git a/src/ae_nullptr_deref_tests/ExtAPI_memcpy_char_ptr.c b/src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_memcpy_char_ptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/ExtAPI_memcpy_char_ptr.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_memcpy_char_ptr.c diff --git a/src/ae_nullptr_deref_tests/ExtAPI_memcpy_int_ptr.c b/src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_memcpy_int_ptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/ExtAPI_memcpy_int_ptr.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_memcpy_int_ptr.c diff --git a/src/ae_nullptr_deref_tests/ExtAPI_memcpy_null_ptr.c b/src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_memcpy_null_ptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/ExtAPI_memcpy_null_ptr.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_memcpy_null_ptr.c diff --git a/src/ae_nullptr_deref_tests/ExtAPI_memcpy_stack_ptr.c b/src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_memcpy_stack_ptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/ExtAPI_memcpy_stack_ptr.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_memcpy_stack_ptr.c diff --git a/src/ae_nullptr_deref_tests/ExtAPI_memcpy_void_ptr.c b/src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_memcpy_void_ptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/ExtAPI_memcpy_void_ptr.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_memcpy_void_ptr.c diff --git a/src/ae_nullptr_deref_tests/ExtAPI_memset_char_ptr.c b/src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_memset_char_ptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/ExtAPI_memset_char_ptr.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_memset_char_ptr.c diff --git a/src/ae_nullptr_deref_tests/ExtAPI_memset_int_ptr.c b/src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_memset_int_ptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/ExtAPI_memset_int_ptr.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_memset_int_ptr.c diff --git a/src/ae_nullptr_deref_tests/ExtAPI_memset_void_ptr.c b/src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_memset_void_ptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/ExtAPI_memset_void_ptr.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_memset_void_ptr.c diff --git a/src/ae_nullptr_deref_tests/ExtAPI_strcat_char_ptr.c b/src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_strcat_char_ptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/ExtAPI_strcat_char_ptr.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_strcat_char_ptr.c diff --git a/src/ae_nullptr_deref_tests/ExtAPI_strcat_int_ptr.c b/src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_strcat_int_ptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/ExtAPI_strcat_int_ptr.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_strcat_int_ptr.c diff --git a/src/ae_nullptr_deref_tests/ExtAPI_strcat_null_ptr.c b/src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_strcat_null_ptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/ExtAPI_strcat_null_ptr.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_strcat_null_ptr.c diff --git a/src/ae_nullptr_deref_tests/ExtAPI_strcat_stack_ptr.c b/src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_strcat_stack_ptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/ExtAPI_strcat_stack_ptr.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_strcat_stack_ptr.c diff --git a/src/ae_nullptr_deref_tests/ExtAPI_strcat_void_ptr.c b/src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_strcat_void_ptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/ExtAPI_strcat_void_ptr.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_strcat_void_ptr.c diff --git a/src/ae_nullptr_deref_tests/ExtAPI_strcpy_char_ptr.c b/src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_strcpy_char_ptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/ExtAPI_strcpy_char_ptr.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_strcpy_char_ptr.c diff --git a/src/ae_nullptr_deref_tests/ExtAPI_strcpy_int_ptr.c b/src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_strcpy_int_ptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/ExtAPI_strcpy_int_ptr.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_strcpy_int_ptr.c diff --git a/src/ae_nullptr_deref_tests/ExtAPI_strcpy_null_ptr.c b/src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_strcpy_null_ptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/ExtAPI_strcpy_null_ptr.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_strcpy_null_ptr.c diff --git a/src/ae_nullptr_deref_tests/ExtAPI_strcpy_stack_ptr.c b/src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_strcpy_stack_ptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/ExtAPI_strcpy_stack_ptr.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_strcpy_stack_ptr.c diff --git a/src/ae_nullptr_deref_tests/ExtAPI_strcpy_void_ptr.c b/src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_strcpy_void_ptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/ExtAPI_strcpy_void_ptr.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/ExtAPI_strcpy_void_ptr.c diff --git a/src/ae_nullptr_deref_tests/char_ptr_branch.c b/src/ae_dense_pass/ae_nullptr_deref_tests/char_ptr_branch.c similarity index 100% rename from src/ae_nullptr_deref_tests/char_ptr_branch.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/char_ptr_branch.c diff --git a/src/ae_nullptr_deref_tests/char_ptr_partial_nullptr.c b/src/ae_dense_pass/ae_nullptr_deref_tests/char_ptr_partial_nullptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/char_ptr_partial_nullptr.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/char_ptr_partial_nullptr.c diff --git a/src/ae_nullptr_deref_tests/dangleptr_safe_branch.c b/src/ae_dense_pass/ae_nullptr_deref_tests/dangleptr_safe_branch.c similarity index 100% rename from src/ae_nullptr_deref_tests/dangleptr_safe_branch.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/dangleptr_safe_branch.c diff --git a/src/ae_nullptr_deref_tests/dangleptr_safe_free_and_remalloc.c b/src/ae_dense_pass/ae_nullptr_deref_tests/dangleptr_safe_free_and_remalloc.c similarity index 100% rename from src/ae_nullptr_deref_tests/dangleptr_safe_free_and_remalloc.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/dangleptr_safe_free_and_remalloc.c diff --git a/src/ae_nullptr_deref_tests/dangleptr_safe_load_reassign.c b/src/ae_dense_pass/ae_nullptr_deref_tests/dangleptr_safe_load_reassign.c similarity index 100% rename from src/ae_nullptr_deref_tests/dangleptr_safe_load_reassign.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/dangleptr_safe_load_reassign.c diff --git a/src/ae_nullptr_deref_tests/dangleptr_unsafe_branch.c b/src/ae_dense_pass/ae_nullptr_deref_tests/dangleptr_unsafe_branch.c similarity index 100% rename from src/ae_nullptr_deref_tests/dangleptr_unsafe_branch.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/dangleptr_unsafe_branch.c diff --git a/src/ae_nullptr_deref_tests/dangleptr_unsafe_load_dangleptr.c b/src/ae_dense_pass/ae_nullptr_deref_tests/dangleptr_unsafe_load_dangleptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/dangleptr_unsafe_load_dangleptr.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/dangleptr_unsafe_load_dangleptr.c diff --git a/src/ae_nullptr_deref_tests/int_ptr_branch.c b/src/ae_dense_pass/ae_nullptr_deref_tests/int_ptr_branch.c similarity index 100% rename from src/ae_nullptr_deref_tests/int_ptr_branch.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/int_ptr_branch.c diff --git a/src/ae_nullptr_deref_tests/int_ptr_partial_nullptr.c b/src/ae_dense_pass/ae_nullptr_deref_tests/int_ptr_partial_nullptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/int_ptr_partial_nullptr.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/int_ptr_partial_nullptr.c diff --git a/src/ae_nullptr_deref_tests/safe_func_arg.c b/src/ae_dense_pass/ae_nullptr_deref_tests/safe_func_arg.c similarity index 100% rename from src/ae_nullptr_deref_tests/safe_func_arg.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/safe_func_arg.c diff --git a/src/ae_nullptr_deref_tests/safe_func_return.c b/src/ae_dense_pass/ae_nullptr_deref_tests/safe_func_return.c similarity index 100% rename from src/ae_nullptr_deref_tests/safe_func_return.c rename to src/ae_dense_pass/ae_nullptr_deref_tests/safe_func_return.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE129_fgets_01.c b/src/ae_dense_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE129_fgets_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE129_fgets_01.c rename to src/ae_dense_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE129_fgets_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE129_rand_01.c b/src/ae_dense_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE129_rand_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE129_rand_01.c rename to src/ae_dense_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE129_rand_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE193_char_alloca_memcpy_01.c b/src/ae_dense_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE193_char_alloca_memcpy_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE193_char_alloca_memcpy_01.c rename to src/ae_dense_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE193_char_alloca_memcpy_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE193_char_alloca_memmove_01.c b/src/ae_dense_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE193_char_alloca_memmove_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE193_char_alloca_memmove_01.c rename to src/ae_dense_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE193_char_alloca_memmove_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE193_char_declare_memmove_01.c b/src/ae_dense_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE193_char_declare_memmove_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE193_char_declare_memmove_01.c rename to src/ae_dense_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE193_char_declare_memmove_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE806_char_declare_loop_01.c b/src/ae_dense_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE806_char_declare_loop_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE806_char_declare_loop_01.c rename to src/ae_dense_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE806_char_declare_loop_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE806_char_declare_ncpy_01.c b/src/ae_dense_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE806_char_declare_ncpy_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE806_char_declare_ncpy_01.c rename to src/ae_dense_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE806_char_declare_ncpy_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE806_wchar_t_declare_memcpy_01.c b/src/ae_dense_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE806_wchar_t_declare_memcpy_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE806_wchar_t_declare_memcpy_01.c rename to src/ae_dense_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE806_wchar_t_declare_memcpy_01.c diff --git a/src/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE806_char_memmove_01.c b/src/ae_dense_pass/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE806_char_memmove_01.c similarity index 100% rename from src/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE806_char_memmove_01.c rename to src/ae_dense_pass/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE806_char_memmove_01.c diff --git a/src/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE806_wchar_t_memmove_01.c b/src/ae_dense_pass/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE806_wchar_t_memmove_01.c similarity index 100% rename from src/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE806_wchar_t_memmove_01.c rename to src/ae_dense_pass/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE806_wchar_t_memmove_01.c diff --git a/src/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_src_char_cpy_01.c b/src/ae_dense_pass/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_src_char_cpy_01.c similarity index 100% rename from src/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_src_char_cpy_01.c rename to src/ae_dense_pass/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_src_char_cpy_01.c diff --git a/src/ae_overflow_tests/CWE126_Buffer_Overread__CWE129_fscanf_01.c b/src/ae_dense_pass/ae_overflow_tests/CWE126_Buffer_Overread__CWE129_fscanf_01.c similarity index 100% rename from src/ae_overflow_tests/CWE126_Buffer_Overread__CWE129_fscanf_01.c rename to src/ae_dense_pass/ae_overflow_tests/CWE126_Buffer_Overread__CWE129_fscanf_01.c diff --git a/src/ae_overflow_tests/CWE126_Buffer_Overread__malloc_wchar_t_loop_01.c b/src/ae_dense_pass/ae_overflow_tests/CWE126_Buffer_Overread__malloc_wchar_t_loop_01.c similarity index 100% rename from src/ae_overflow_tests/CWE126_Buffer_Overread__malloc_wchar_t_loop_01.c rename to src/ae_dense_pass/ae_overflow_tests/CWE126_Buffer_Overread__malloc_wchar_t_loop_01.c diff --git a/src/ae_overflow_tests/CWE126_Buffer_Overread__malloc_wchar_t_memmove_01.c b/src/ae_dense_pass/ae_overflow_tests/CWE126_Buffer_Overread__malloc_wchar_t_memmove_01.c similarity index 100% rename from src/ae_overflow_tests/CWE126_Buffer_Overread__malloc_wchar_t_memmove_01.c rename to src/ae_dense_pass/ae_overflow_tests/CWE126_Buffer_Overread__malloc_wchar_t_memmove_01.c diff --git a/src/ae_overflow_tests/CWE126_Buffer_Overread__wchar_t_declare_loop_01.c b/src/ae_dense_pass/ae_overflow_tests/CWE126_Buffer_Overread__wchar_t_declare_loop_01.c similarity index 100% rename from src/ae_overflow_tests/CWE126_Buffer_Overread__wchar_t_declare_loop_01.c rename to src/ae_dense_pass/ae_overflow_tests/CWE126_Buffer_Overread__wchar_t_declare_loop_01.c diff --git a/src/ae_overflow_tests/CWE126_Buffer_Overread__wchar_t_declare_memmove_01.c b/src/ae_dense_pass/ae_overflow_tests/CWE126_Buffer_Overread__wchar_t_declare_memmove_01.c similarity index 100% rename from src/ae_overflow_tests/CWE126_Buffer_Overread__wchar_t_declare_memmove_01.c rename to src/ae_dense_pass/ae_overflow_tests/CWE126_Buffer_Overread__wchar_t_declare_memmove_01.c diff --git a/src/ae_overflow_tests/std_testcase.h b/src/ae_dense_pass/ae_overflow_tests/std_testcase.h similarity index 100% rename from src/ae_overflow_tests/std_testcase.h rename to src/ae_dense_pass/ae_overflow_tests/std_testcase.h diff --git a/src/ae_overflow_tests/std_testcase_io.h b/src/ae_dense_pass/ae_overflow_tests/std_testcase_io.h similarity index 100% rename from src/ae_overflow_tests/std_testcase_io.h rename to src/ae_dense_pass/ae_overflow_tests/std_testcase_io.h diff --git a/src/ae_recursion_tests/demo.c b/src/ae_dense_pass/ae_recursion_tests/demo.c similarity index 100% rename from src/ae_recursion_tests/demo.c rename to src/ae_dense_pass/ae_recursion_tests/demo.c diff --git a/src/ae_recursion_tests/recursive_addition_0.c b/src/ae_dense_pass/ae_recursion_tests/recursive_addition_0.c similarity index 100% rename from src/ae_recursion_tests/recursive_addition_0.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_addition_0.c diff --git a/src/ae_recursion_tests/recursive_addition_1.c b/src/ae_dense_pass/ae_recursion_tests/recursive_addition_1.c similarity index 100% rename from src/ae_recursion_tests/recursive_addition_1.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_addition_1.c diff --git a/src/ae_recursion_tests/recursive_addition_2.c b/src/ae_dense_pass/ae_recursion_tests/recursive_addition_2.c similarity index 100% rename from src/ae_recursion_tests/recursive_addition_2.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_addition_2.c diff --git a/src/ae_recursion_tests/recursive_addition_3.c b/src/ae_dense_pass/ae_recursion_tests/recursive_addition_3.c similarity index 100% rename from src/ae_recursion_tests/recursive_addition_3.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_addition_3.c diff --git a/src/ae_recursion_tests/recursive_addition_4.c b/src/ae_dense_pass/ae_recursion_tests/recursive_addition_4.c similarity index 100% rename from src/ae_recursion_tests/recursive_addition_4.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_addition_4.c diff --git a/src/ae_recursion_tests/recursive_afterrec_0.c b/src/ae_dense_pass/ae_recursion_tests/recursive_afterrec_0.c similarity index 100% rename from src/ae_recursion_tests/recursive_afterrec_0.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_afterrec_0.c diff --git a/src/ae_recursion_tests/recursive_afterrec_1.c b/src/ae_dense_pass/ae_recursion_tests/recursive_afterrec_1.c similarity index 100% rename from src/ae_recursion_tests/recursive_afterrec_1.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_afterrec_1.c diff --git a/src/ae_recursion_tests/recursive_afterrec_2.c b/src/ae_dense_pass/ae_recursion_tests/recursive_afterrec_2.c similarity index 100% rename from src/ae_recursion_tests/recursive_afterrec_2.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_afterrec_2.c diff --git a/src/ae_recursion_tests/recursive_afterrec_3.c b/src/ae_dense_pass/ae_recursion_tests/recursive_afterrec_3.c similarity index 100% rename from src/ae_recursion_tests/recursive_afterrec_3.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_afterrec_3.c diff --git a/src/ae_recursion_tests/recursive_afterrec_4.c b/src/ae_dense_pass/ae_recursion_tests/recursive_afterrec_4.c similarity index 100% rename from src/ae_recursion_tests/recursive_afterrec_4.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_afterrec_4.c diff --git a/src/ae_recursion_tests/recursive_id_0.c b/src/ae_dense_pass/ae_recursion_tests/recursive_id_0.c similarity index 100% rename from src/ae_recursion_tests/recursive_id_0.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_id_0.c diff --git a/src/ae_recursion_tests/recursive_id_1.c b/src/ae_dense_pass/ae_recursion_tests/recursive_id_1.c similarity index 100% rename from src/ae_recursion_tests/recursive_id_1.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_id_1.c diff --git a/src/ae_recursion_tests/recursive_id_2.c b/src/ae_dense_pass/ae_recursion_tests/recursive_id_2.c similarity index 100% rename from src/ae_recursion_tests/recursive_id_2.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_id_2.c diff --git a/src/ae_recursion_tests/recursive_id_3.c b/src/ae_dense_pass/ae_recursion_tests/recursive_id_3.c similarity index 100% rename from src/ae_recursion_tests/recursive_id_3.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_id_3.c diff --git a/src/ae_recursion_tests/recursive_id_4.c b/src/ae_dense_pass/ae_recursion_tests/recursive_id_4.c similarity index 100% rename from src/ae_recursion_tests/recursive_id_4.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_id_4.c diff --git a/src/ae_recursion_tests/recursive_id_5.c b/src/ae_dense_pass/ae_recursion_tests/recursive_id_5.c similarity index 100% rename from src/ae_recursion_tests/recursive_id_5.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_id_5.c diff --git a/src/ae_recursion_tests/recursive_id_6.c b/src/ae_dense_pass/ae_recursion_tests/recursive_id_6.c similarity index 100% rename from src/ae_recursion_tests/recursive_id_6.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_id_6.c diff --git a/src/ae_recursion_tests/recursive_id_7.c b/src/ae_dense_pass/ae_recursion_tests/recursive_id_7.c similarity index 100% rename from src/ae_recursion_tests/recursive_id_7.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_id_7.c diff --git a/src/ae_recursion_tests/recursive_id_8.c b/src/ae_dense_pass/ae_recursion_tests/recursive_id_8.c similarity index 100% rename from src/ae_recursion_tests/recursive_id_8.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_id_8.c diff --git a/src/ae_recursion_tests/recursive_id_9.c b/src/ae_dense_pass/ae_recursion_tests/recursive_id_9.c similarity index 100% rename from src/ae_recursion_tests/recursive_id_9.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_id_9.c diff --git a/src/ae_recursion_tests/recursive_mc91_0.c b/src/ae_dense_pass/ae_recursion_tests/recursive_mc91_0.c similarity index 100% rename from src/ae_recursion_tests/recursive_mc91_0.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_mc91_0.c diff --git a/src/ae_recursion_tests/recursive_mc91_1.c b/src/ae_dense_pass/ae_recursion_tests/recursive_mc91_1.c similarity index 100% rename from src/ae_recursion_tests/recursive_mc91_1.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_mc91_1.c diff --git a/src/ae_recursion_tests/recursive_mc91_2.c b/src/ae_dense_pass/ae_recursion_tests/recursive_mc91_2.c similarity index 100% rename from src/ae_recursion_tests/recursive_mc91_2.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_mc91_2.c diff --git a/src/ae_recursion_tests/recursive_mc91_3.c b/src/ae_dense_pass/ae_recursion_tests/recursive_mc91_3.c similarity index 100% rename from src/ae_recursion_tests/recursive_mc91_3.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_mc91_3.c diff --git a/src/ae_recursion_tests/recursive_mc91_4.c b/src/ae_dense_pass/ae_recursion_tests/recursive_mc91_4.c similarity index 100% rename from src/ae_recursion_tests/recursive_mc91_4.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_mc91_4.c diff --git a/src/ae_recursion_tests/recursive_mc91_5.c b/src/ae_dense_pass/ae_recursion_tests/recursive_mc91_5.c similarity index 100% rename from src/ae_recursion_tests/recursive_mc91_5.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_mc91_5.c diff --git a/src/ae_recursion_tests/recursive_mc91_6.c b/src/ae_dense_pass/ae_recursion_tests/recursive_mc91_6.c similarity index 100% rename from src/ae_recursion_tests/recursive_mc91_6.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_mc91_6.c diff --git a/src/ae_recursion_tests/recursive_mc91_7.c b/src/ae_dense_pass/ae_recursion_tests/recursive_mc91_7.c similarity index 100% rename from src/ae_recursion_tests/recursive_mc91_7.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_mc91_7.c diff --git a/src/ae_recursion_tests/recursive_mc91_8.c b/src/ae_dense_pass/ae_recursion_tests/recursive_mc91_8.c similarity index 100% rename from src/ae_recursion_tests/recursive_mc91_8.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_mc91_8.c diff --git a/src/ae_recursion_tests/recursive_sum_0.c b/src/ae_dense_pass/ae_recursion_tests/recursive_sum_0.c similarity index 100% rename from src/ae_recursion_tests/recursive_sum_0.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_sum_0.c diff --git a/src/ae_recursion_tests/recursive_sum_1.c b/src/ae_dense_pass/ae_recursion_tests/recursive_sum_1.c similarity index 100% rename from src/ae_recursion_tests/recursive_sum_1.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_sum_1.c diff --git a/src/ae_recursion_tests/recursive_sum_2.c b/src/ae_dense_pass/ae_recursion_tests/recursive_sum_2.c similarity index 100% rename from src/ae_recursion_tests/recursive_sum_2.c rename to src/ae_dense_pass/ae_recursion_tests/recursive_sum_2.c diff --git a/src/ae_assert_tests/BASIC_array_struct_0-0.c b/src/ae_pass/ae_assert_tests/BASIC_array_struct_0-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_array_struct_0-0.c rename to src/ae_pass/ae_assert_tests/BASIC_array_struct_0-0.c diff --git a/src/ae_assert_tests/BASIC_arraycopy3-0.c b/src/ae_pass/ae_assert_tests/BASIC_arraycopy3-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_arraycopy3-0.c rename to src/ae_pass/ae_assert_tests/BASIC_arraycopy3-0.c diff --git a/src/ae_assert_tests/BASIC_assign_1-0.c b/src/ae_pass/ae_assert_tests/BASIC_assign_1-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_assign_1-0.c rename to src/ae_pass/ae_assert_tests/BASIC_assign_1-0.c diff --git a/src/ae_assert_tests/BASIC_bi_add_2-0.c b/src/ae_pass/ae_assert_tests/BASIC_bi_add_2-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_bi_add_2-0.c rename to src/ae_pass/ae_assert_tests/BASIC_bi_add_2-0.c diff --git a/src/ae_assert_tests/BASIC_bi_mul_0-0.c b/src/ae_pass/ae_assert_tests/BASIC_bi_mul_0-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_bi_mul_0-0.c rename to src/ae_pass/ae_assert_tests/BASIC_bi_mul_0-0.c diff --git a/src/ae_assert_tests/BASIC_br_false_0-0.c b/src/ae_pass/ae_assert_tests/BASIC_br_false_0-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_br_false_0-0.c rename to src/ae_pass/ae_assert_tests/BASIC_br_false_0-0.c diff --git a/src/ae_assert_tests/BASIC_br_nd_0-0.c b/src/ae_pass/ae_assert_tests/BASIC_br_nd_0-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_br_nd_0-0.c rename to src/ae_pass/ae_assert_tests/BASIC_br_nd_0-0.c diff --git a/src/ae_assert_tests/BASIC_br_nd_2-0.c b/src/ae_pass/ae_assert_tests/BASIC_br_nd_2-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_br_nd_2-0.c rename to src/ae_pass/ae_assert_tests/BASIC_br_nd_2-0.c diff --git a/src/ae_assert_tests/BASIC_br_nd_malloc-0.c b/src/ae_pass/ae_assert_tests/BASIC_br_nd_malloc-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_br_nd_malloc-0.c rename to src/ae_pass/ae_assert_tests/BASIC_br_nd_malloc-0.c diff --git a/src/ae_assert_tests/BASIC_nullptr_def_0-0.c b/src/ae_pass/ae_assert_tests/BASIC_nullptr_def_0-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_nullptr_def_0-0.c rename to src/ae_pass/ae_assert_tests/BASIC_nullptr_def_0-0.c diff --git a/src/ae_assert_tests/BASIC_ptr_s32_2-0.c b/src/ae_pass/ae_assert_tests/BASIC_ptr_s32_2-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_ptr_s32_2-0.c rename to src/ae_pass/ae_assert_tests/BASIC_ptr_s32_2-0.c diff --git a/src/ae_assert_tests/BASIC_struct_assign_0-0.c b/src/ae_pass/ae_assert_tests/BASIC_struct_assign_0-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_struct_assign_0-0.c rename to src/ae_pass/ae_assert_tests/BASIC_struct_assign_0-0.c diff --git a/src/ae_assert_tests/BASIC_switch-0.c b/src/ae_pass/ae_assert_tests/BASIC_switch-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_switch-0.c rename to src/ae_pass/ae_assert_tests/BASIC_switch-0.c diff --git a/src/ae_assert_tests/BASIC_switch01-0.c b/src/ae_pass/ae_assert_tests/BASIC_switch01-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_switch01-0.c rename to src/ae_pass/ae_assert_tests/BASIC_switch01-0.c diff --git a/src/ae_assert_tests/BASIC_switch02-0.c b/src/ae_pass/ae_assert_tests/BASIC_switch02-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_switch02-0.c rename to src/ae_pass/ae_assert_tests/BASIC_switch02-0.c diff --git a/src/ae_assert_tests/BASIC_switch03-0.c b/src/ae_pass/ae_assert_tests/BASIC_switch03-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_switch03-0.c rename to src/ae_pass/ae_assert_tests/BASIC_switch03-0.c diff --git a/src/ae_assert_tests/BASIC_switch04-0.c b/src/ae_pass/ae_assert_tests/BASIC_switch04-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_switch04-0.c rename to src/ae_pass/ae_assert_tests/BASIC_switch04-0.c diff --git a/src/ae_assert_tests/BASIC_switch05-0.c b/src/ae_pass/ae_assert_tests/BASIC_switch05-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_switch05-0.c rename to src/ae_pass/ae_assert_tests/BASIC_switch05-0.c diff --git a/src/ae_assert_tests/BASIC_switch06-0.c b/src/ae_pass/ae_assert_tests/BASIC_switch06-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_switch06-0.c rename to src/ae_pass/ae_assert_tests/BASIC_switch06-0.c diff --git a/src/ae_assert_tests/BASIC_switch07-0.c b/src/ae_pass/ae_assert_tests/BASIC_switch07-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_switch07-0.c rename to src/ae_pass/ae_assert_tests/BASIC_switch07-0.c diff --git a/src/ae_assert_tests/BASIC_switch08-0.c b/src/ae_pass/ae_assert_tests/BASIC_switch08-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_switch08-0.c rename to src/ae_pass/ae_assert_tests/BASIC_switch08-0.c diff --git a/src/ae_assert_tests/BASIC_switch09-0.c b/src/ae_pass/ae_assert_tests/BASIC_switch09-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_switch09-0.c rename to src/ae_pass/ae_assert_tests/BASIC_switch09-0.c diff --git a/src/ae_assert_tests/BASIC_switch10-0.c b/src/ae_pass/ae_assert_tests/BASIC_switch10-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_switch10-0.c rename to src/ae_pass/ae_assert_tests/BASIC_switch10-0.c diff --git a/src/ae_assert_tests/BASIC_test_11-0.c b/src/ae_pass/ae_assert_tests/BASIC_test_11-0.c similarity index 100% rename from src/ae_assert_tests/BASIC_test_11-0.c rename to src/ae_pass/ae_assert_tests/BASIC_test_11-0.c diff --git a/src/ae_assert_tests/BUF_OVERFLOW_test_47-0.c b/src/ae_pass/ae_assert_tests/BUF_OVERFLOW_test_47-0.c similarity index 100% rename from src/ae_assert_tests/BUF_OVERFLOW_test_47-0.c rename to src/ae_pass/ae_assert_tests/BUF_OVERFLOW_test_47-0.c diff --git a/src/ae_assert_tests/CAST_fptosi.c b/src/ae_pass/ae_assert_tests/CAST_fptosi.c similarity index 100% rename from src/ae_assert_tests/CAST_fptosi.c rename to src/ae_pass/ae_assert_tests/CAST_fptosi.c diff --git a/src/ae_assert_tests/CAST_fptoui.c b/src/ae_pass/ae_assert_tests/CAST_fptoui.c similarity index 100% rename from src/ae_assert_tests/CAST_fptoui.c rename to src/ae_pass/ae_assert_tests/CAST_fptoui.c diff --git a/src/ae_assert_tests/CAST_fptrunc.c b/src/ae_pass/ae_assert_tests/CAST_fptrunc.c similarity index 100% rename from src/ae_assert_tests/CAST_fptrunc.c rename to src/ae_pass/ae_assert_tests/CAST_fptrunc.c diff --git a/src/ae_assert_tests/CAST_sext.c b/src/ae_pass/ae_assert_tests/CAST_sext.c similarity index 100% rename from src/ae_assert_tests/CAST_sext.c rename to src/ae_pass/ae_assert_tests/CAST_sext.c diff --git a/src/ae_assert_tests/CAST_sitofp.c b/src/ae_pass/ae_assert_tests/CAST_sitofp.c similarity index 100% rename from src/ae_assert_tests/CAST_sitofp.c rename to src/ae_pass/ae_assert_tests/CAST_sitofp.c diff --git a/src/ae_assert_tests/CAST_trunc.c b/src/ae_pass/ae_assert_tests/CAST_trunc.c similarity index 100% rename from src/ae_assert_tests/CAST_trunc.c rename to src/ae_pass/ae_assert_tests/CAST_trunc.c diff --git a/src/ae_assert_tests/CAST_uitofp.c b/src/ae_pass/ae_assert_tests/CAST_uitofp.c similarity index 100% rename from src/ae_assert_tests/CAST_uitofp.c rename to src/ae_pass/ae_assert_tests/CAST_uitofp.c diff --git a/src/ae_assert_tests/CAST_zext.c b/src/ae_pass/ae_assert_tests/CAST_zext.c similarity index 100% rename from src/ae_assert_tests/CAST_zext.c rename to src/ae_pass/ae_assert_tests/CAST_zext.c diff --git a/src/ae_assert_tests/CVE-2019-19847-0.c b/src/ae_pass/ae_assert_tests/CVE-2019-19847-0.c similarity index 100% rename from src/ae_assert_tests/CVE-2019-19847-0.c rename to src/ae_pass/ae_assert_tests/CVE-2019-19847-0.c diff --git a/src/ae_assert_tests/CVE-2020-13598-0.c b/src/ae_pass/ae_assert_tests/CVE-2020-13598-0.c similarity index 100% rename from src/ae_assert_tests/CVE-2020-13598-0.c rename to src/ae_pass/ae_assert_tests/CVE-2020-13598-0.c diff --git a/src/ae_assert_tests/CVE-2020-29203-0.c b/src/ae_pass/ae_assert_tests/CVE-2020-29203-0.c similarity index 100% rename from src/ae_assert_tests/CVE-2020-29203-0.c rename to src/ae_pass/ae_assert_tests/CVE-2020-29203-0.c diff --git a/src/ae_assert_tests/CVE-2021-39602-0.c b/src/ae_pass/ae_assert_tests/CVE-2021-39602-0.c similarity index 100% rename from src/ae_assert_tests/CVE-2021-39602-0.c rename to src/ae_pass/ae_assert_tests/CVE-2021-39602-0.c diff --git a/src/ae_assert_tests/CVE-2021-44975-0.c b/src/ae_pass/ae_assert_tests/CVE-2021-44975-0.c similarity index 100% rename from src/ae_assert_tests/CVE-2021-44975-0.c rename to src/ae_pass/ae_assert_tests/CVE-2021-44975-0.c diff --git a/src/ae_assert_tests/CVE-2021-45341-0.c b/src/ae_pass/ae_assert_tests/CVE-2021-45341-0.c similarity index 100% rename from src/ae_assert_tests/CVE-2021-45341-0.c rename to src/ae_pass/ae_assert_tests/CVE-2021-45341-0.c diff --git a/src/ae_assert_tests/CVE-2022-23850-0.c b/src/ae_pass/ae_assert_tests/CVE-2022-23850-0.c similarity index 100% rename from src/ae_assert_tests/CVE-2022-23850-0.c rename to src/ae_pass/ae_assert_tests/CVE-2022-23850-0.c diff --git a/src/ae_assert_tests/CVE-2022-26129-0.c b/src/ae_pass/ae_assert_tests/CVE-2022-26129-0.c similarity index 100% rename from src/ae_assert_tests/CVE-2022-26129-0.c rename to src/ae_pass/ae_assert_tests/CVE-2022-26129-0.c diff --git a/src/ae_assert_tests/CVE-2022-27239-0.c b/src/ae_pass/ae_assert_tests/CVE-2022-27239-0.c similarity index 100% rename from src/ae_assert_tests/CVE-2022-27239-0.c rename to src/ae_pass/ae_assert_tests/CVE-2022-27239-0.c diff --git a/src/ae_assert_tests/CVE-2022-29023-0.c b/src/ae_pass/ae_assert_tests/CVE-2022-29023-0.c similarity index 100% rename from src/ae_assert_tests/CVE-2022-29023-0.c rename to src/ae_pass/ae_assert_tests/CVE-2022-29023-0.c diff --git a/src/ae_assert_tests/CVE-2022-34835-0.c b/src/ae_pass/ae_assert_tests/CVE-2022-34835-0.c similarity index 100% rename from src/ae_assert_tests/CVE-2022-34835-0.c rename to src/ae_pass/ae_assert_tests/CVE-2022-34835-0.c diff --git a/src/ae_assert_tests/CVE-2022-34913-0.c b/src/ae_pass/ae_assert_tests/CVE-2022-34913-0.c similarity index 100% rename from src/ae_assert_tests/CVE-2022-34913-0.c rename to src/ae_pass/ae_assert_tests/CVE-2022-34913-0.c diff --git a/src/ae_assert_tests/CVE-2022-34918-0.c b/src/ae_pass/ae_assert_tests/CVE-2022-34918-0.c similarity index 100% rename from src/ae_assert_tests/CVE-2022-34918-0.c rename to src/ae_pass/ae_assert_tests/CVE-2022-34918-0.c diff --git a/src/ae_assert_tests/CWE127_har_alloc-0.c b/src/ae_pass/ae_assert_tests/CWE127_har_alloc-0.c similarity index 100% rename from src/ae_assert_tests/CWE127_har_alloc-0.c rename to src/ae_pass/ae_assert_tests/CWE127_har_alloc-0.c diff --git a/src/ae_assert_tests/INTERVAL_test_11-0.c b/src/ae_pass/ae_assert_tests/INTERVAL_test_11-0.c similarity index 100% rename from src/ae_assert_tests/INTERVAL_test_11-0.c rename to src/ae_pass/ae_assert_tests/INTERVAL_test_11-0.c diff --git a/src/ae_assert_tests/INTERVAL_test_58-0.c b/src/ae_pass/ae_assert_tests/INTERVAL_test_58-0.c similarity index 100% rename from src/ae_assert_tests/INTERVAL_test_58-0.c rename to src/ae_pass/ae_assert_tests/INTERVAL_test_58-0.c diff --git a/src/ae_assert_tests/INTERVAL_test_64-0.c b/src/ae_pass/ae_assert_tests/INTERVAL_test_64-0.c similarity index 100% rename from src/ae_assert_tests/INTERVAL_test_64-0.c rename to src/ae_pass/ae_assert_tests/INTERVAL_test_64-0.c diff --git a/src/ae_assert_tests/cwe126_char_alloc-0.c b/src/ae_pass/ae_assert_tests/cwe126_char_alloc-0.c similarity index 100% rename from src/ae_assert_tests/cwe126_char_alloc-0.c rename to src/ae_pass/ae_assert_tests/cwe126_char_alloc-0.c diff --git a/src/ae_assert_tests/cwe190_char_fscanf-0.c b/src/ae_pass/ae_assert_tests/cwe190_char_fscanf-0.c similarity index 100% rename from src/ae_assert_tests/cwe190_char_fscanf-0.c rename to src/ae_pass/ae_assert_tests/cwe190_char_fscanf-0.c diff --git a/src/ae_assert_tests/cwe190_int_max-0.c b/src/ae_pass/ae_assert_tests/cwe190_int_max-0.c similarity index 100% rename from src/ae_assert_tests/cwe190_int_max-0.c rename to src/ae_pass/ae_assert_tests/cwe190_int_max-0.c diff --git a/src/ae_nullptr_deref_tests/EexAPI_strcat.c b/src/ae_pass/ae_nullptr_deref_tests/EexAPI_strcat.c similarity index 100% rename from src/ae_nullptr_deref_tests/EexAPI_strcat.c rename to src/ae_pass/ae_nullptr_deref_tests/EexAPI_strcat.c diff --git a/src/ae_nullptr_deref_tests/ExtAPI_memcpy.c b/src/ae_pass/ae_nullptr_deref_tests/ExtAPI_memcpy.c similarity index 100% rename from src/ae_nullptr_deref_tests/ExtAPI_memcpy.c rename to src/ae_pass/ae_nullptr_deref_tests/ExtAPI_memcpy.c diff --git a/src/ae_nullptr_deref_tests/ExtAPI_memset.c b/src/ae_pass/ae_nullptr_deref_tests/ExtAPI_memset.c similarity index 100% rename from src/ae_nullptr_deref_tests/ExtAPI_memset.c rename to src/ae_pass/ae_nullptr_deref_tests/ExtAPI_memset.c diff --git a/src/ae_nullptr_deref_tests/ExtAPI_memset_null_ptr.c b/src/ae_pass/ae_nullptr_deref_tests/ExtAPI_memset_null_ptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/ExtAPI_memset_null_ptr.c rename to src/ae_pass/ae_nullptr_deref_tests/ExtAPI_memset_null_ptr.c diff --git a/src/ae_nullptr_deref_tests/ExtAPI_memset_stack_ptr.c b/src/ae_pass/ae_nullptr_deref_tests/ExtAPI_memset_stack_ptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/ExtAPI_memset_stack_ptr.c rename to src/ae_pass/ae_nullptr_deref_tests/ExtAPI_memset_stack_ptr.c diff --git a/src/ae_nullptr_deref_tests/ExtAPI_strcpy.c b/src/ae_pass/ae_nullptr_deref_tests/ExtAPI_strcpy.c similarity index 100% rename from src/ae_nullptr_deref_tests/ExtAPI_strcpy.c rename to src/ae_pass/ae_nullptr_deref_tests/ExtAPI_strcpy.c diff --git a/src/ae_nullptr_deref_tests/array_2d_big.c b/src/ae_pass/ae_nullptr_deref_tests/array_2d_big.c similarity index 100% rename from src/ae_nullptr_deref_tests/array_2d_big.c rename to src/ae_pass/ae_nullptr_deref_tests/array_2d_big.c diff --git a/src/ae_nullptr_deref_tests/array_2d_small.c b/src/ae_pass/ae_nullptr_deref_tests/array_2d_small.c similarity index 100% rename from src/ae_nullptr_deref_tests/array_2d_small.c rename to src/ae_pass/ae_nullptr_deref_tests/array_2d_small.c diff --git a/src/ae_nullptr_deref_tests/array_2d_small_partial_null.c b/src/ae_pass/ae_nullptr_deref_tests/array_2d_small_partial_null.c similarity index 100% rename from src/ae_nullptr_deref_tests/array_2d_small_partial_null.c rename to src/ae_pass/ae_nullptr_deref_tests/array_2d_small_partial_null.c diff --git a/src/ae_nullptr_deref_tests/array_all_nullptr.c b/src/ae_pass/ae_nullptr_deref_tests/array_all_nullptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/array_all_nullptr.c rename to src/ae_pass/ae_nullptr_deref_tests/array_all_nullptr.c diff --git a/src/ae_nullptr_deref_tests/array_of_struct.c b/src/ae_pass/ae_nullptr_deref_tests/array_of_struct.c similarity index 100% rename from src/ae_nullptr_deref_tests/array_of_struct.c rename to src/ae_pass/ae_nullptr_deref_tests/array_of_struct.c diff --git a/src/ae_nullptr_deref_tests/array_of_struct_func_ptr.c b/src/ae_pass/ae_nullptr_deref_tests/array_of_struct_func_ptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/array_of_struct_func_ptr.c rename to src/ae_pass/ae_nullptr_deref_tests/array_of_struct_func_ptr.c diff --git a/src/ae_nullptr_deref_tests/char_ptr_arg.c b/src/ae_pass/ae_nullptr_deref_tests/char_ptr_arg.c similarity index 100% rename from src/ae_nullptr_deref_tests/char_ptr_arg.c rename to src/ae_pass/ae_nullptr_deref_tests/char_ptr_arg.c diff --git a/src/ae_nullptr_deref_tests/char_ptr_arithmetic.c b/src/ae_pass/ae_nullptr_deref_tests/char_ptr_arithmetic.c similarity index 100% rename from src/ae_nullptr_deref_tests/char_ptr_arithmetic.c rename to src/ae_pass/ae_nullptr_deref_tests/char_ptr_arithmetic.c diff --git a/src/ae_nullptr_deref_tests/char_ptr_doubleptr.c b/src/ae_pass/ae_nullptr_deref_tests/char_ptr_doubleptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/char_ptr_doubleptr.c rename to src/ae_pass/ae_nullptr_deref_tests/char_ptr_doubleptr.c diff --git a/src/ae_nullptr_deref_tests/char_ptr_func_return_val.c b/src/ae_pass/ae_nullptr_deref_tests/char_ptr_func_return_val.c similarity index 100% rename from src/ae_nullptr_deref_tests/char_ptr_func_return_val.c rename to src/ae_pass/ae_nullptr_deref_tests/char_ptr_func_return_val.c diff --git a/src/ae_nullptr_deref_tests/char_ptr_in_struct_null.c b/src/ae_pass/ae_nullptr_deref_tests/char_ptr_in_struct_null.c similarity index 100% rename from src/ae_nullptr_deref_tests/char_ptr_in_struct_null.c rename to src/ae_pass/ae_nullptr_deref_tests/char_ptr_in_struct_null.c diff --git a/src/ae_nullptr_deref_tests/char_ptr_in_struct_uninitialized.c b/src/ae_pass/ae_nullptr_deref_tests/char_ptr_in_struct_uninitialized.c similarity index 100% rename from src/ae_nullptr_deref_tests/char_ptr_in_struct_uninitialized.c rename to src/ae_pass/ae_nullptr_deref_tests/char_ptr_in_struct_uninitialized.c diff --git a/src/ae_nullptr_deref_tests/char_ptr_indirect_func_return_val.c b/src/ae_pass/ae_nullptr_deref_tests/char_ptr_indirect_func_return_val.c similarity index 100% rename from src/ae_nullptr_deref_tests/char_ptr_indirect_func_return_val.c rename to src/ae_pass/ae_nullptr_deref_tests/char_ptr_indirect_func_return_val.c diff --git a/src/ae_nullptr_deref_tests/char_ptr_simple.c b/src/ae_pass/ae_nullptr_deref_tests/char_ptr_simple.c similarity index 100% rename from src/ae_nullptr_deref_tests/char_ptr_simple.c rename to src/ae_pass/ae_nullptr_deref_tests/char_ptr_simple.c diff --git a/src/ae_nullptr_deref_tests/char_ptr_uninit_ptr.c b/src/ae_pass/ae_nullptr_deref_tests/char_ptr_uninit_ptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/char_ptr_uninit_ptr.c rename to src/ae_pass/ae_nullptr_deref_tests/char_ptr_uninit_ptr.c diff --git a/src/ae_nullptr_deref_tests/dangleptr_safe_free_and_reassign.c b/src/ae_pass/ae_nullptr_deref_tests/dangleptr_safe_free_and_reassign.c similarity index 100% rename from src/ae_nullptr_deref_tests/dangleptr_safe_free_and_reassign.c rename to src/ae_pass/ae_nullptr_deref_tests/dangleptr_safe_free_and_reassign.c diff --git a/src/ae_nullptr_deref_tests/dangleptr_safe_load.c b/src/ae_pass/ae_nullptr_deref_tests/dangleptr_safe_load.c similarity index 100% rename from src/ae_nullptr_deref_tests/dangleptr_safe_load.c rename to src/ae_pass/ae_nullptr_deref_tests/dangleptr_safe_load.c diff --git a/src/ae_nullptr_deref_tests/func_nullptr_func_1.c b/src/ae_pass/ae_nullptr_deref_tests/func_nullptr_func_1.c similarity index 100% rename from src/ae_nullptr_deref_tests/func_nullptr_func_1.c rename to src/ae_pass/ae_nullptr_deref_tests/func_nullptr_func_1.c diff --git a/src/ae_nullptr_deref_tests/func_nullptr_func_2.c b/src/ae_pass/ae_nullptr_deref_tests/func_nullptr_func_2.c similarity index 100% rename from src/ae_nullptr_deref_tests/func_nullptr_func_2.c rename to src/ae_pass/ae_nullptr_deref_tests/func_nullptr_func_2.c diff --git a/src/ae_nullptr_deref_tests/int_ptr_arg.c b/src/ae_pass/ae_nullptr_deref_tests/int_ptr_arg.c similarity index 100% rename from src/ae_nullptr_deref_tests/int_ptr_arg.c rename to src/ae_pass/ae_nullptr_deref_tests/int_ptr_arg.c diff --git a/src/ae_nullptr_deref_tests/int_ptr_arithmetic.c b/src/ae_pass/ae_nullptr_deref_tests/int_ptr_arithmetic.c similarity index 100% rename from src/ae_nullptr_deref_tests/int_ptr_arithmetic.c rename to src/ae_pass/ae_nullptr_deref_tests/int_ptr_arithmetic.c diff --git a/src/ae_nullptr_deref_tests/int_ptr_doubleptr.c b/src/ae_pass/ae_nullptr_deref_tests/int_ptr_doubleptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/int_ptr_doubleptr.c rename to src/ae_pass/ae_nullptr_deref_tests/int_ptr_doubleptr.c diff --git a/src/ae_nullptr_deref_tests/int_ptr_func_return_val.c b/src/ae_pass/ae_nullptr_deref_tests/int_ptr_func_return_val.c similarity index 100% rename from src/ae_nullptr_deref_tests/int_ptr_func_return_val.c rename to src/ae_pass/ae_nullptr_deref_tests/int_ptr_func_return_val.c diff --git a/src/ae_nullptr_deref_tests/int_ptr_in_struct_null.c b/src/ae_pass/ae_nullptr_deref_tests/int_ptr_in_struct_null.c similarity index 100% rename from src/ae_nullptr_deref_tests/int_ptr_in_struct_null.c rename to src/ae_pass/ae_nullptr_deref_tests/int_ptr_in_struct_null.c diff --git a/src/ae_nullptr_deref_tests/int_ptr_in_struct_uninitialized.c b/src/ae_pass/ae_nullptr_deref_tests/int_ptr_in_struct_uninitialized.c similarity index 100% rename from src/ae_nullptr_deref_tests/int_ptr_in_struct_uninitialized.c rename to src/ae_pass/ae_nullptr_deref_tests/int_ptr_in_struct_uninitialized.c diff --git a/src/ae_nullptr_deref_tests/int_ptr_indirect_func_return_val.c b/src/ae_pass/ae_nullptr_deref_tests/int_ptr_indirect_func_return_val.c similarity index 100% rename from src/ae_nullptr_deref_tests/int_ptr_indirect_func_return_val.c rename to src/ae_pass/ae_nullptr_deref_tests/int_ptr_indirect_func_return_val.c diff --git a/src/ae_nullptr_deref_tests/int_ptr_simple.c b/src/ae_pass/ae_nullptr_deref_tests/int_ptr_simple.c similarity index 100% rename from src/ae_nullptr_deref_tests/int_ptr_simple.c rename to src/ae_pass/ae_nullptr_deref_tests/int_ptr_simple.c diff --git a/src/ae_nullptr_deref_tests/int_ptr_uninit_ptr.c b/src/ae_pass/ae_nullptr_deref_tests/int_ptr_uninit_ptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/int_ptr_uninit_ptr.c rename to src/ae_pass/ae_nullptr_deref_tests/int_ptr_uninit_ptr.c diff --git a/src/ae_nullptr_deref_tests/recursive_return_null.c b/src/ae_pass/ae_nullptr_deref_tests/recursive_return_null.c similarity index 100% rename from src/ae_nullptr_deref_tests/recursive_return_null.c rename to src/ae_pass/ae_nullptr_deref_tests/recursive_return_null.c diff --git a/src/ae_nullptr_deref_tests/safe_array_access.c b/src/ae_pass/ae_nullptr_deref_tests/safe_array_access.c similarity index 100% rename from src/ae_nullptr_deref_tests/safe_array_access.c rename to src/ae_pass/ae_nullptr_deref_tests/safe_array_access.c diff --git a/src/ae_nullptr_deref_tests/safe_array_of_struct_1.c b/src/ae_pass/ae_nullptr_deref_tests/safe_array_of_struct_1.c similarity index 100% rename from src/ae_nullptr_deref_tests/safe_array_of_struct_1.c rename to src/ae_pass/ae_nullptr_deref_tests/safe_array_of_struct_1.c diff --git a/src/ae_nullptr_deref_tests/safe_array_of_struct_2.c b/src/ae_pass/ae_nullptr_deref_tests/safe_array_of_struct_2.c similarity index 100% rename from src/ae_nullptr_deref_tests/safe_array_of_struct_2.c rename to src/ae_pass/ae_nullptr_deref_tests/safe_array_of_struct_2.c diff --git a/src/ae_nullptr_deref_tests/safe_double_ptr.c b/src/ae_pass/ae_nullptr_deref_tests/safe_double_ptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/safe_double_ptr.c rename to src/ae_pass/ae_nullptr_deref_tests/safe_double_ptr.c diff --git a/src/ae_nullptr_deref_tests/safe_func_ptr.c b/src/ae_pass/ae_nullptr_deref_tests/safe_func_ptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/safe_func_ptr.c rename to src/ae_pass/ae_nullptr_deref_tests/safe_func_ptr.c diff --git a/src/ae_nullptr_deref_tests/safe_loop_access.c b/src/ae_pass/ae_nullptr_deref_tests/safe_loop_access.c similarity index 100% rename from src/ae_nullptr_deref_tests/safe_loop_access.c rename to src/ae_pass/ae_nullptr_deref_tests/safe_loop_access.c diff --git a/src/ae_nullptr_deref_tests/safe_pointer_access.c b/src/ae_pass/ae_nullptr_deref_tests/safe_pointer_access.c similarity index 100% rename from src/ae_nullptr_deref_tests/safe_pointer_access.c rename to src/ae_pass/ae_nullptr_deref_tests/safe_pointer_access.c diff --git a/src/ae_nullptr_deref_tests/safe_ptr_array_access.c b/src/ae_pass/ae_nullptr_deref_tests/safe_ptr_array_access.c similarity index 100% rename from src/ae_nullptr_deref_tests/safe_ptr_array_access.c rename to src/ae_pass/ae_nullptr_deref_tests/safe_ptr_array_access.c diff --git a/src/ae_nullptr_deref_tests/safe_ptr_assign.c b/src/ae_pass/ae_nullptr_deref_tests/safe_ptr_assign.c similarity index 100% rename from src/ae_nullptr_deref_tests/safe_ptr_assign.c rename to src/ae_pass/ae_nullptr_deref_tests/safe_ptr_assign.c diff --git a/src/ae_nullptr_deref_tests/safe_single_array_access.c b/src/ae_pass/ae_nullptr_deref_tests/safe_single_array_access.c similarity index 100% rename from src/ae_nullptr_deref_tests/safe_single_array_access.c rename to src/ae_pass/ae_nullptr_deref_tests/safe_single_array_access.c diff --git a/src/ae_nullptr_deref_tests/safe_struct_access.c b/src/ae_pass/ae_nullptr_deref_tests/safe_struct_access.c similarity index 100% rename from src/ae_nullptr_deref_tests/safe_struct_access.c rename to src/ae_pass/ae_nullptr_deref_tests/safe_struct_access.c diff --git a/src/ae_nullptr_deref_tests/struct_func_ptr_1.c b/src/ae_pass/ae_nullptr_deref_tests/struct_func_ptr_1.c similarity index 100% rename from src/ae_nullptr_deref_tests/struct_func_ptr_1.c rename to src/ae_pass/ae_nullptr_deref_tests/struct_func_ptr_1.c diff --git a/src/ae_nullptr_deref_tests/struct_func_ptr_2.c b/src/ae_pass/ae_nullptr_deref_tests/struct_func_ptr_2.c similarity index 100% rename from src/ae_nullptr_deref_tests/struct_func_ptr_2.c rename to src/ae_pass/ae_nullptr_deref_tests/struct_func_ptr_2.c diff --git a/src/ae_nullptr_deref_tests/struct_nullptr.c b/src/ae_pass/ae_nullptr_deref_tests/struct_nullptr.c similarity index 100% rename from src/ae_nullptr_deref_tests/struct_nullptr.c rename to src/ae_pass/ae_nullptr_deref_tests/struct_nullptr.c diff --git a/src/ae_nullptr_deref_tests/struct_uninit_struct.c b/src/ae_pass/ae_nullptr_deref_tests/struct_uninit_struct.c similarity index 100% rename from src/ae_nullptr_deref_tests/struct_uninit_struct.c rename to src/ae_pass/ae_nullptr_deref_tests/struct_uninit_struct.c diff --git a/src/ae_nullptr_deref_tests/union_nullptr_member.c b/src/ae_pass/ae_nullptr_deref_tests/union_nullptr_member.c similarity index 100% rename from src/ae_nullptr_deref_tests/union_nullptr_member.c rename to src/ae_pass/ae_nullptr_deref_tests/union_nullptr_member.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE129_listen_socket_01.c b/src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE129_listen_socket_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE129_listen_socket_01.c rename to src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE129_listen_socket_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE131_loop_01.c b/src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE131_loop_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE131_loop_01.c rename to src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE131_loop_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE131_memcpy_01.c b/src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE131_memcpy_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE131_memcpy_01.c rename to src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE131_memcpy_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE193_char_alloca_cpy_01.c b/src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE193_char_alloca_cpy_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE193_char_alloca_cpy_01.c rename to src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE193_char_alloca_cpy_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE193_wchar_t_declare_cpy_01.c b/src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE193_wchar_t_declare_cpy_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE193_wchar_t_declare_cpy_01.c rename to src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE193_wchar_t_declare_cpy_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_char_alloca_loop_01.c b/src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_char_alloca_loop_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_char_alloca_loop_01.c rename to src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_char_alloca_loop_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_char_alloca_memcpy_01.c b/src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_char_alloca_memcpy_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_char_alloca_memcpy_01.c rename to src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_char_alloca_memcpy_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_char_declare_memmove_01.c b/src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_char_declare_memmove_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_char_declare_memmove_01.c rename to src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_char_declare_memmove_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_char_declare_ncpy_01.c b/src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_char_declare_ncpy_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_char_declare_ncpy_01.c rename to src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_char_declare_ncpy_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_int64_t_alloca_memmove_01.c b/src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_int64_t_alloca_memmove_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_int64_t_alloca_memmove_01.c rename to src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_int64_t_alloca_memmove_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_int64_t_declare_loop_01.c b/src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_int64_t_declare_loop_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_int64_t_declare_loop_01.c rename to src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_int64_t_declare_loop_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_int64_t_declare_memcpy_01.c b/src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_int64_t_declare_memcpy_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_int64_t_declare_memcpy_01.c rename to src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_int64_t_declare_memcpy_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_int64_t_declare_memmove_01.c b/src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_int64_t_declare_memmove_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_int64_t_declare_memmove_01.c rename to src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_int64_t_declare_memmove_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_int_alloca_loop_01.c b/src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_int_alloca_loop_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_int_alloca_loop_01.c rename to src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_int_alloca_loop_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_int_alloca_memcpy_01.c b/src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_int_alloca_memcpy_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_int_alloca_memcpy_01.c rename to src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_int_alloca_memcpy_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_struct_alloca_memmove_01.c b/src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_struct_alloca_memmove_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_struct_alloca_memmove_01.c rename to src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_struct_alloca_memmove_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_struct_declare_memmove_01.c b/src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_struct_declare_memmove_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_struct_declare_memmove_01.c rename to src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_struct_declare_memmove_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_wchar_t_alloca_loop_01.c b/src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_wchar_t_alloca_loop_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_wchar_t_alloca_loop_01.c rename to src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_wchar_t_alloca_loop_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_wchar_t_alloca_snprintf_01.c b/src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_wchar_t_alloca_snprintf_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_wchar_t_alloca_snprintf_01.c rename to src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_wchar_t_alloca_snprintf_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_wchar_t_declare_loop_01.c b/src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_wchar_t_declare_loop_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_wchar_t_declare_loop_01.c rename to src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_wchar_t_declare_loop_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_wchar_t_declare_memcpy_01.c b/src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_wchar_t_declare_memcpy_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_wchar_t_declare_memcpy_01.c rename to src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_wchar_t_declare_memcpy_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_wchar_t_declare_memmove_01.c b/src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_wchar_t_declare_memmove_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_wchar_t_declare_memmove_01.c rename to src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_wchar_t_declare_memmove_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_wchar_t_declare_snprintf_01.c b/src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_wchar_t_declare_snprintf_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_wchar_t_declare_snprintf_01.c rename to src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__CWE805_wchar_t_declare_snprintf_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__dest_wchar_t_alloca_cpy_01.c b/src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__dest_wchar_t_alloca_cpy_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__dest_wchar_t_alloca_cpy_01.c rename to src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__dest_wchar_t_alloca_cpy_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__src_char_alloca_cpy_01.c b/src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__src_char_alloca_cpy_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__src_char_alloca_cpy_01.c rename to src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__src_char_alloca_cpy_01.c diff --git a/src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__src_wchar_t_declare_cpy_01.c b/src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__src_wchar_t_declare_cpy_01.c similarity index 100% rename from src/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__src_wchar_t_declare_cpy_01.c rename to src/ae_pass/ae_overflow_tests/CWE121_Stack_Based_Buffer_Overflow__src_wchar_t_declare_cpy_01.c diff --git a/src/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__CWE131_loop_01.c b/src/ae_pass/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__CWE131_loop_01.c similarity index 100% rename from src/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__CWE131_loop_01.c rename to src/ae_pass/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__CWE131_loop_01.c diff --git a/src/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__CWE131_memcpy_01.c b/src/ae_pass/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__CWE131_memcpy_01.c similarity index 100% rename from src/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__CWE131_memcpy_01.c rename to src/ae_pass/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__CWE131_memcpy_01.c diff --git a/src/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE805_int64_t_memcpy_01.c b/src/ae_pass/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE805_int64_t_memcpy_01.c similarity index 100% rename from src/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE805_int64_t_memcpy_01.c rename to src/ae_pass/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE805_int64_t_memcpy_01.c diff --git a/src/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE805_int64_t_memmove_01.c b/src/ae_pass/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE805_int64_t_memmove_01.c similarity index 100% rename from src/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE805_int64_t_memmove_01.c rename to src/ae_pass/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE805_int64_t_memmove_01.c diff --git a/src/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE805_int_memmove_01.c b/src/ae_pass/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE805_int_memmove_01.c similarity index 100% rename from src/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE805_int_memmove_01.c rename to src/ae_pass/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE805_int_memmove_01.c diff --git a/src/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE805_struct_memcpy_01.c b/src/ae_pass/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE805_struct_memcpy_01.c similarity index 100% rename from src/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE805_struct_memcpy_01.c rename to src/ae_pass/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE805_struct_memcpy_01.c diff --git a/src/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE805_wchar_t_memmove_01.c b/src/ae_pass/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE805_wchar_t_memmove_01.c similarity index 100% rename from src/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE805_wchar_t_memmove_01.c rename to src/ae_pass/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE805_wchar_t_memmove_01.c diff --git a/src/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE805_wchar_t_snprintf_01.c b/src/ae_pass/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE805_wchar_t_snprintf_01.c similarity index 100% rename from src/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE805_wchar_t_snprintf_01.c rename to src/ae_pass/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_CWE805_wchar_t_snprintf_01.c diff --git a/src/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_dest_char_cpy_01.c b/src/ae_pass/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_dest_char_cpy_01.c similarity index 100% rename from src/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_dest_char_cpy_01.c rename to src/ae_pass/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_dest_char_cpy_01.c diff --git a/src/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_dest_wchar_t_cpy_01.c b/src/ae_pass/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_dest_wchar_t_cpy_01.c similarity index 100% rename from src/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_dest_wchar_t_cpy_01.c rename to src/ae_pass/ae_overflow_tests/CWE122_Heap_Based_Buffer_Overflow__c_dest_wchar_t_cpy_01.c diff --git a/src/ae_overflow_tests/CWE126_Buffer_Overread__CWE129_fgets_01.c b/src/ae_pass/ae_overflow_tests/CWE126_Buffer_Overread__CWE129_fgets_01.c similarity index 100% rename from src/ae_overflow_tests/CWE126_Buffer_Overread__CWE129_fgets_01.c rename to src/ae_pass/ae_overflow_tests/CWE126_Buffer_Overread__CWE129_fgets_01.c diff --git a/src/ae_overflow_tests/CWE126_Buffer_Overread__CWE129_listen_socket_01.c b/src/ae_pass/ae_overflow_tests/CWE126_Buffer_Overread__CWE129_listen_socket_01.c similarity index 100% rename from src/ae_overflow_tests/CWE126_Buffer_Overread__CWE129_listen_socket_01.c rename to src/ae_pass/ae_overflow_tests/CWE126_Buffer_Overread__CWE129_listen_socket_01.c diff --git a/src/ae_overflow_tests/CWE126_Buffer_Overread__char_alloca_memcpy_01.c b/src/ae_pass/ae_overflow_tests/CWE126_Buffer_Overread__char_alloca_memcpy_01.c similarity index 100% rename from src/ae_overflow_tests/CWE126_Buffer_Overread__char_alloca_memcpy_01.c rename to src/ae_pass/ae_overflow_tests/CWE126_Buffer_Overread__char_alloca_memcpy_01.c diff --git a/src/ae_overflow_tests/CWE126_Buffer_Overread__char_declare_loop_01.c b/src/ae_pass/ae_overflow_tests/CWE126_Buffer_Overread__char_declare_loop_01.c similarity index 100% rename from src/ae_overflow_tests/CWE126_Buffer_Overread__char_declare_loop_01.c rename to src/ae_pass/ae_overflow_tests/CWE126_Buffer_Overread__char_declare_loop_01.c diff --git a/src/ae_overflow_tests/CWE126_Buffer_Overread__char_declare_memcpy_01.c b/src/ae_pass/ae_overflow_tests/CWE126_Buffer_Overread__char_declare_memcpy_01.c similarity index 100% rename from src/ae_overflow_tests/CWE126_Buffer_Overread__char_declare_memcpy_01.c rename to src/ae_pass/ae_overflow_tests/CWE126_Buffer_Overread__char_declare_memcpy_01.c diff --git a/src/ae_overflow_tests/CWE126_Buffer_Overread__malloc_char_loop_01.c b/src/ae_pass/ae_overflow_tests/CWE126_Buffer_Overread__malloc_char_loop_01.c similarity index 100% rename from src/ae_overflow_tests/CWE126_Buffer_Overread__malloc_char_loop_01.c rename to src/ae_pass/ae_overflow_tests/CWE126_Buffer_Overread__malloc_char_loop_01.c diff --git a/src/ae_overflow_tests/CWE126_Buffer_Overread__malloc_char_memmove_01.c b/src/ae_pass/ae_overflow_tests/CWE126_Buffer_Overread__malloc_char_memmove_01.c similarity index 100% rename from src/ae_overflow_tests/CWE126_Buffer_Overread__malloc_char_memmove_01.c rename to src/ae_pass/ae_overflow_tests/CWE126_Buffer_Overread__malloc_char_memmove_01.c diff --git a/src/ae_overflow_tests/ExtAPI_strcat_01.c b/src/ae_pass/ae_overflow_tests/ExtAPI_strcat_01.c similarity index 100% rename from src/ae_overflow_tests/ExtAPI_strcat_01.c rename to src/ae_pass/ae_overflow_tests/ExtAPI_strcat_01.c diff --git a/src/ae_overflow_tests/ExtAPI_strcat_02.c b/src/ae_pass/ae_overflow_tests/ExtAPI_strcat_02.c similarity index 100% rename from src/ae_overflow_tests/ExtAPI_strcat_02.c rename to src/ae_pass/ae_overflow_tests/ExtAPI_strcat_02.c diff --git a/src/ae_overflow_tests/ExtAPI_strcat_03.c b/src/ae_pass/ae_overflow_tests/ExtAPI_strcat_03.c similarity index 100% rename from src/ae_overflow_tests/ExtAPI_strcat_03.c rename to src/ae_pass/ae_overflow_tests/ExtAPI_strcat_03.c diff --git a/src/ae_overflow_tests/ExtAPI_strcat_04.c b/src/ae_pass/ae_overflow_tests/ExtAPI_strcat_04.c similarity index 100% rename from src/ae_overflow_tests/ExtAPI_strcat_04.c rename to src/ae_pass/ae_overflow_tests/ExtAPI_strcat_04.c diff --git a/src/ae_pass/ae_overflow_tests/std_testcase.h b/src/ae_pass/ae_overflow_tests/std_testcase.h new file mode 100644 index 00000000..a9e90155 --- /dev/null +++ b/src/ae_pass/ae_overflow_tests/std_testcase.h @@ -0,0 +1,129 @@ +#ifndef _STD_TESTCASE_H +#define _STD_TESTCASE_H + +/* This file exists in order to: + * 1) Include lots of standardized headers in one place + * 2) To avoid #include-ing things in the middle of your code + * #include-ing in the middle of a C/C++ file is apt to cause compiler errors + * 3) To get good #define's in place + * + * In reality you need a complex interaction of scripts of build processes to do + * this correctly (i.e., autoconf) + */ + +#ifdef _WIN32 +/* Ensure the CRT does not disable the "insecure functions" + * Ensure not to generate warnings about ANSI C functions. + */ +#define _CRT_SECURE_NO_DEPRECATE 1 +#define _CRT_SECURE_NO_WARNING 1 + +/* We do not use _malloca as it sometimes allocates memory on the heap and we + * do not want this to happen in test cases that expect stack-allocated memory + * Also, _alloca_s cannot be used as it is deprecated and has been replaced + * with _malloca */ +#define ALLOCA _alloca + +/* disable warnings about use of POSIX names for functions like execl() + Visual Studio wants you to use the ISO C++ name, such as _execl() */ +#pragma warning(disable:4996) + +#else +/* Linux/GNU wants this macro, otherwise stdint.h and limits.h are mostly useless */ +# define __STDC_LIMIT_MACROS 1 + +#define ALLOCA alloca +#endif + +#include +#include +#include +#include +#include +#include +#include +#ifndef _WIN32 +/* SIZE_MAX, int64_t, etc. are in this file on Linux */ +# include +#endif +#include +#include +#include +#include +#ifdef _WIN32 +#include /* for open/close etc */ +#endif + +#ifdef __cplusplus +#include // for placement new + +/* classes used in some test cases as a custom type */ +class TwoIntsClass +{ + public: // Needed to access variables from label files + int intOne; + int intTwo; +}; + +class OneIntClass +{ + public: // Needed to access variables from label files + int intOne; +}; + +extern void SAFE_BUFACCESS(void* data, int size); +extern void UNSAFE_BUFACCESS(void* data, int size); + +#endif + +#ifndef __cplusplus +/* Define true and false, which are included in C++, but not in C */ +#define true 1 +#define false 0 + +#endif /* end ifndef __cplusplus */ + +/* rand only returns 15 bits, so we xor 3 calls together to get the full result (13 bits overflow, but that is okay) */ +// shifting signed values might overflow and be undefined +#define URAND31() (((unsigned)rand()<<30) ^ ((unsigned)rand()<<15) ^ rand()) +// choose to produce a positive or a negative number. Note: conditional only evaluates one URAND31 +#define RAND32() ((int)(rand() & 1 ? URAND31() : -URAND31() - 1)) + +/* rand only returns 15 bits, so we xor 5 calls together to get the full result (11 bits overflow, but that is okay) */ +// shifting signed values might overflow and be undefined +#define URAND63() (((uint64_t)rand()<<60) ^ ((uint64_t)rand()<<45) ^ ((uint64_t)rand()<<30) ^ ((uint64_t)rand()<<15) ^ rand()) +// choose to produce a positive or a negative number. Note: conditional only evaluates one URAND63 +#define RAND64() ((int64_t)(rand() & 1 ? URAND63() : -URAND63() - 1)) + +/* struct used in some test cases as a custom type */ +typedef struct _twoIntsStruct +{ + int intOne; + int intTwo; +} twoIntsStruct; + +#ifdef __cplusplus +extern "C" { +#endif + +/* The variables below are declared "const", so a tool should + be able to identify that reads of these will always return their + initialized values. */ +extern const int GLOBAL_CONST_TRUE; /* true */ +extern const int GLOBAL_CONST_FALSE; /* false */ +extern const int GLOBAL_CONST_FIVE; /* 5 */ + +/* The variables below are not defined as "const", but are never + assigned any other value, so a tool should be able to identify that + reads of these will always return their initialized values. */ +extern int globalTrue; /* true */ +extern int globalFalse; /* false */ +extern int globalFive; /* 5 */ + +#ifdef __cplusplus +} +#endif + +#include "std_testcase_io.h" + +#endif diff --git a/src/ae_pass/ae_overflow_tests/std_testcase_io.h b/src/ae_pass/ae_overflow_tests/std_testcase_io.h new file mode 100644 index 00000000..f31640e3 --- /dev/null +++ b/src/ae_pass/ae_overflow_tests/std_testcase_io.h @@ -0,0 +1,62 @@ +/* header file to define functions in io.c. Not named io.h + because that name is already taken by a system header on + Windows */ + +#ifndef _STD_TESTCASE_IO_H +#define _STD_TESTCASE_IO_H + +#include "std_testcase.h" /* needed for the twoint struct */ + +#ifdef __cplusplus +extern "C" { +#endif + +void printLine(const char * line); + +void printWLine(const wchar_t * line); + +void printIntLine (int intNumber); + +void printShortLine (short shortNumber); + +void printFloatLine (float floatNumber); + +void printLongLine(long longNumber); + +void printLongLongLine(int64_t longLongIntNumber); + +void printSizeTLine(size_t sizeTNumber); + +void printHexCharLine(char charHex); + +void printWcharLine(wchar_t wideChar); + +void printUnsignedLine(unsigned unsignedNumber); + +void printHexUnsignedCharLine(unsigned char unsignedCharacter); + +void printDoubleLine(double doubleNumber); + +void printStructLine(const twoIntsStruct * structTwoIntsStruct); + +void printBytesLine(const unsigned char * bytes, size_t numBytes); + +size_t decodeHexChars(unsigned char * bytes, size_t numBytes, const char * hex); + +size_t decodeHexWChars(unsigned char * bytes, size_t numBytes, const wchar_t * hex); + +int globalReturnsTrue(); + +int globalReturnsFalse(); + +int globalReturnsTrueOrFalse(); + +/* Define some global variables that will get argc and argv */ +extern int globalArgc; +extern char** globalArgv; + +#ifdef __cplusplus +} +#endif + +#endif