diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/Makefile | 2 | ||||
-rw-r--r-- | test/crashtest2-01.txt | 326 | ||||
-rw-r--r-- | test/test1-01.txt | 11 | ||||
-rw-r--r-- | test/test1-02.txt | 11 | ||||
-rw-r--r-- | test/test1-03.txt | 4 | ||||
-rw-r--r-- | test/test4-03.txt | 0 | ||||
-rw-r--r-- | test/test5-01.txt | 801 | ||||
-rw-r--r-- | test/test5-02.txt | 5 | ||||
-rw-r--r-- | test/test5-03.txt | 28 | ||||
-rw-r--r-- | test/test5-04.txt | 0 | ||||
-rw-r--r-- | test/test5.c | 35 |
11 files changed, 1205 insertions, 18 deletions
diff --git a/test/Makefile b/test/Makefile index 65bdd9f..3ecddb3 100644 --- a/test/Makefile +++ b/test/Makefile @@ -27,10 +27,12 @@ test3: test4: $(call CMD,dump,test4.c,test4-01.txt) $(call CMD,findargs,test4.c,test4-02.txt) + $(call CMD,detectnullpointers,test4.c,test4-03.txt) test5: $(call CMD,dump,test5.c,test5-01.txt) $(call CMD,findargs,test5.c,test5-02.txt) $(call CMD,detectnullpointers,test5.c,test5-03.txt) + $(call CMD,dumpunsupported,test5.c,test5-04.txt) crashtest1: $(call CMD,dump,crashtest1.h,crashtest1-01.txt) diff --git a/test/crashtest2-01.txt b/test/crashtest2-01.txt index aca3d21..b93e370 100644 --- a/test/crashtest2-01.txt +++ b/test/crashtest2-01.txt @@ -7195,12 +7195,16 @@ function_decl _mm_undefined_ps crashtest2.h 107:1 - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - operand + var_decl __Y crashtest2.h 109:10 - initial + - isUsed: 1 statement_list - operand decl_expr crashtest2.h 109:16 - statement var_decl __Y crashtest2.h 109:10 - operand - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - operand + var_decl __Y crashtest2.h 109:10 - initial + - isUsed: 1 return_expr crashtest2.h 110:10 - statement init_expr - operand result_decl crashtest2.h 107:23 - operand @@ -7211,11 +7215,15 @@ function_decl _mm_undefined_ps crashtest2.h 107:1 - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - operand + var_decl __Y crashtest2.h 109:10 - initial + - isUsed: 1 block - operand var_decl __Y crashtest2.h 109:10 - block vars - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - block vars + var_decl __Y crashtest2.h 109:10 - initial + - isUsed: 1 function_decl _mm_setzero_ps crashtest2.h 115:1 - isExternal: 1 - isPublic: 1 @@ -11339,11 +11347,32 @@ function_decl _mm_cvtpi32x2_ps crashtest2.h 711:1 - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - operand + call_expr crashtest2.h 714:42 - initial + - function: LOAD_LANES - initial + var_decl __zero crashtest2.h 713:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + Unsupported node type: non_lvalue_expr - arg - initial decl_expr crashtest2.h 715:61 - statement var_decl __sfb crashtest2.h 715:10 - operand - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - operand + call_expr crashtest2.h 715:42 - initial + - function: LOAD_LANES - initial + var_decl __sfa crashtest2.h 714:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + call_expr crashtest2.h 714:42 - initial + - function: LOAD_LANES - initial + var_decl __zero crashtest2.h 713:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + Unsupported node type: non_lvalue_expr - arg - initial + Unsupported node type: non_lvalue_expr - arg - initial return_expr crashtest2.h 716:55 - statement init_expr - operand result_decl crashtest2.h 711:38 - operand @@ -11356,10 +11385,31 @@ function_decl _mm_cvtpi32x2_ps crashtest2.h 711:1 - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - arg + call_expr crashtest2.h 714:42 - initial + - function: LOAD_LANES - initial + var_decl __zero crashtest2.h 713:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + Unsupported node type: non_lvalue_expr - arg - initial var_decl __sfb crashtest2.h 715:10 - arg - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - arg + call_expr crashtest2.h 715:42 - initial + - function: LOAD_LANES - initial + var_decl __sfa crashtest2.h 714:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + call_expr crashtest2.h 714:42 - initial + - function: LOAD_LANES - initial + var_decl __zero crashtest2.h 713:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + Unsupported node type: non_lvalue_expr - arg - initial + Unsupported node type: non_lvalue_expr - arg - initial block - operand var_decl __zero crashtest2.h 713:10 - block vars - isUsed: 1 @@ -11369,10 +11419,31 @@ function_decl _mm_cvtpi32x2_ps crashtest2.h 711:1 - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - block vars + call_expr crashtest2.h 714:42 - initial + - function: LOAD_LANES - initial + var_decl __zero crashtest2.h 713:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + Unsupported node type: non_lvalue_expr - arg - initial var_decl __sfb crashtest2.h 715:10 - block vars - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - block vars + call_expr crashtest2.h 715:42 - initial + - function: LOAD_LANES - initial + var_decl __sfa crashtest2.h 714:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + call_expr crashtest2.h 714:42 - initial + - function: LOAD_LANES - initial + var_decl __zero crashtest2.h 713:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + Unsupported node type: non_lvalue_expr - arg - initial + Unsupported node type: non_lvalue_expr - arg - initial function_decl _mm_cvtps_pi16 crashtest2.h 721:1 - isExternal: 1 - isPublic: 1 @@ -11403,27 +11474,73 @@ function_decl _mm_cvtps_pi16 crashtest2.h 721:1 - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - operand + - isUsed: 1 + parm_decl __A crashtest2.h 721:23 - initial statement_list - operand decl_expr crashtest2.h 723:27 - statement var_decl __hisf crashtest2.h 723:10 - operand - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - operand + - isUsed: 1 + parm_decl __A crashtest2.h 721:23 - initial decl_expr crashtest2.h 724:57 - statement var_decl __losf crashtest2.h 724:10 - operand - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - operand + call_expr crashtest2.h 724:42 - initial + - function: LOAD_LANES - initial + var_decl __hisf crashtest2.h 723:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + - isUsed: 1 + parm_decl __A crashtest2.h 721:23 - initial + var_decl __hisf crashtest2.h 723:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + - isUsed: 1 + parm_decl __A crashtest2.h 721:23 - initial decl_expr crashtest2.h 725:50 - statement var_decl __hisi crashtest2.h 725:10 - operand - isUsed: 1 integer_cst 64 - decl size Unsupported node type: vector_type - var type - operand + call_expr crashtest2.h 725:43 - initial + - function: LOAD_LANES - initial + var_decl __hisf crashtest2.h 723:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + - isUsed: 1 + parm_decl __A crashtest2.h 721:23 - initial decl_expr crashtest2.h 726:50 - statement var_decl __losi crashtest2.h 726:10 - operand - isUsed: 1 integer_cst 64 - decl size Unsupported node type: vector_type - var type - operand + call_expr crashtest2.h 726:43 - initial + - function: LOAD_LANES - initial + var_decl __losf crashtest2.h 724:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + call_expr crashtest2.h 724:42 - initial + - function: LOAD_LANES - initial + var_decl __hisf crashtest2.h 723:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + - isUsed: 1 + parm_decl __A crashtest2.h 721:23 - initial + var_decl __hisf crashtest2.h 723:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + - isUsed: 1 + parm_decl __A crashtest2.h 721:23 - initial return_expr crashtest2.h 727:57 - statement init_expr - operand result_decl crashtest2.h 721:26 - operand @@ -11436,18 +11553,62 @@ function_decl _mm_cvtps_pi16 crashtest2.h 721:1 - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - block vars + - isUsed: 1 + parm_decl __A crashtest2.h 721:23 - initial var_decl __losf crashtest2.h 724:10 - block vars - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - block vars + call_expr crashtest2.h 724:42 - initial + - function: LOAD_LANES - initial + var_decl __hisf crashtest2.h 723:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + - isUsed: 1 + parm_decl __A crashtest2.h 721:23 - initial + var_decl __hisf crashtest2.h 723:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + - isUsed: 1 + parm_decl __A crashtest2.h 721:23 - initial var_decl __hisi crashtest2.h 725:10 - block vars - isUsed: 1 integer_cst 64 - decl size Unsupported node type: vector_type - var type - block vars + call_expr crashtest2.h 725:43 - initial + - function: LOAD_LANES - initial + var_decl __hisf crashtest2.h 723:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + - isUsed: 1 + parm_decl __A crashtest2.h 721:23 - initial var_decl __losi crashtest2.h 726:10 - block vars - isUsed: 1 integer_cst 64 - decl size Unsupported node type: vector_type - var type - block vars + call_expr crashtest2.h 726:43 - initial + - function: LOAD_LANES - initial + var_decl __losf crashtest2.h 724:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + call_expr crashtest2.h 724:42 - initial + - function: LOAD_LANES - initial + var_decl __hisf crashtest2.h 723:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + - isUsed: 1 + parm_decl __A crashtest2.h 721:23 - initial + var_decl __hisf crashtest2.h 723:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + - isUsed: 1 + parm_decl __A crashtest2.h 721:23 - initial function_decl _mm_cvtps_pi8 crashtest2.h 732:1 - isExternal: 1 - isPublic: 1 @@ -12746,12 +12907,26 @@ function_decl _mm_loadr_ps crashtest2.h 936:1 - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - operand + indirect_ref - initial + nop_expr - operand + - isUsed: 1 + parm_decl __P crashtest2.h 936:28 - operand + pointer_type - decl type + Unsupported node type: real_type - nested type - decl type + integer_cst 64 - parm size statement_list - operand decl_expr crashtest2.h 938:29 - statement var_decl __tmp crashtest2.h 938:10 - operand - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - operand + indirect_ref - initial + nop_expr - operand + - isUsed: 1 + parm_decl __P crashtest2.h 936:28 - operand + pointer_type - decl type + Unsupported node type: real_type - nested type - decl type + integer_cst 64 - parm size return_expr crashtest2.h 939:77 - statement init_expr - operand result_decl crashtest2.h 936:31 - operand @@ -12764,16 +12939,37 @@ function_decl _mm_loadr_ps crashtest2.h 936:1 - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - arg + indirect_ref - initial + nop_expr - operand + - isUsed: 1 + parm_decl __P crashtest2.h 936:28 - operand + pointer_type - decl type + Unsupported node type: real_type - nested type - decl type + integer_cst 64 - parm size var_decl __tmp crashtest2.h 938:10 - arg - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - arg + indirect_ref - initial + nop_expr - operand + - isUsed: 1 + parm_decl __P crashtest2.h 936:28 - operand + pointer_type - decl type + Unsupported node type: real_type - nested type - decl type + integer_cst 64 - parm size integer_cst 27 - arg block - operand var_decl __tmp crashtest2.h 938:10 - block vars - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - block vars + indirect_ref - initial + nop_expr - operand + - isUsed: 1 + parm_decl __P crashtest2.h 936:28 - operand + pointer_type - decl type + Unsupported node type: real_type - nested type - decl type + integer_cst 64 - parm size function_decl _mm_set_ps crashtest2.h 944:1 - isExternal: 1 - isPublic: 1 @@ -13100,17 +13296,36 @@ function_decl _mm_store1_ps crashtest2.h 985:1 - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - operand + - isUsed: 1 + parm_decl __A crashtest2.h 985:35 - initial statement_list - operand decl_expr crashtest2.h 987:25 - statement var_decl __va crashtest2.h 987:10 - operand - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - operand + - isUsed: 1 + parm_decl __A crashtest2.h 985:35 - initial decl_expr crashtest2.h 988:74 - statement var_decl __tmp crashtest2.h 988:10 - operand - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - operand + call_expr crashtest2.h 988:40 - initial + - function: LOAD_LANES - initial + var_decl __va crashtest2.h 987:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + - isUsed: 1 + parm_decl __A crashtest2.h 985:35 - initial + var_decl __va crashtest2.h 987:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + - isUsed: 1 + parm_decl __A crashtest2.h 985:35 - initial + integer_cst 0 - arg cleanup_point_expr crashtest2.h 989:29 - statement expr_stmt - operand call_expr crashtest2.h 989:17 - expresssion @@ -13124,15 +13339,47 @@ function_decl _mm_store1_ps crashtest2.h 985:1 - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - arg + call_expr crashtest2.h 988:40 - initial + - function: LOAD_LANES - initial + var_decl __va crashtest2.h 987:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + - isUsed: 1 + parm_decl __A crashtest2.h 985:35 - initial + var_decl __va crashtest2.h 987:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + - isUsed: 1 + parm_decl __A crashtest2.h 985:35 - initial + integer_cst 0 - arg block - operand var_decl __va crashtest2.h 987:10 - block vars - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - block vars + - isUsed: 1 + parm_decl __A crashtest2.h 985:35 - initial var_decl __tmp crashtest2.h 988:10 - block vars - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - block vars + call_expr crashtest2.h 988:40 - initial + - function: LOAD_LANES - initial + var_decl __va crashtest2.h 987:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + - isUsed: 1 + parm_decl __A crashtest2.h 985:35 - initial + var_decl __va crashtest2.h 987:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + - isUsed: 1 + parm_decl __A crashtest2.h 985:35 - initial + integer_cst 0 - arg function_decl _mm_store_ps1 crashtest2.h 993:1 - isExternal: 1 - isPublic: 1 @@ -13223,17 +13470,36 @@ function_decl _mm_storer_ps crashtest2.h 1000:1 - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - operand + - isUsed: 1 + parm_decl __A crashtest2.h 1000:35 - initial statement_list - operand decl_expr crashtest2.h 1002:25 - statement var_decl __va crashtest2.h 1002:10 - operand - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - operand + - isUsed: 1 + parm_decl __A crashtest2.h 1000:35 - initial decl_expr crashtest2.h 1003:74 - statement var_decl __tmp crashtest2.h 1003:10 - operand - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - operand + call_expr crashtest2.h 1003:40 - initial + - function: LOAD_LANES - initial + var_decl __va crashtest2.h 1002:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + - isUsed: 1 + parm_decl __A crashtest2.h 1000:35 - initial + var_decl __va crashtest2.h 1002:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + - isUsed: 1 + parm_decl __A crashtest2.h 1000:35 - initial + integer_cst 27 - arg cleanup_point_expr crashtest2.h 1004:28 - statement expr_stmt - operand call_expr crashtest2.h 1004:16 - expresssion @@ -13247,15 +13513,47 @@ function_decl _mm_storer_ps crashtest2.h 1000:1 - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - arg + call_expr crashtest2.h 1003:40 - initial + - function: LOAD_LANES - initial + var_decl __va crashtest2.h 1002:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + - isUsed: 1 + parm_decl __A crashtest2.h 1000:35 - initial + var_decl __va crashtest2.h 1002:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + - isUsed: 1 + parm_decl __A crashtest2.h 1000:35 - initial + integer_cst 27 - arg block - operand var_decl __va crashtest2.h 1002:10 - block vars - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - block vars + - isUsed: 1 + parm_decl __A crashtest2.h 1000:35 - initial var_decl __tmp crashtest2.h 1003:10 - block vars - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - block vars + call_expr crashtest2.h 1003:40 - initial + - function: LOAD_LANES - initial + var_decl __va crashtest2.h 1002:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + - isUsed: 1 + parm_decl __A crashtest2.h 1000:35 - initial + var_decl __va crashtest2.h 1002:10 - arg + - isUsed: 1 + integer_cst 128 - decl size + Unsupported node type: vector_type - var type - arg + - isUsed: 1 + parm_decl __A crashtest2.h 1000:35 - initial + integer_cst 27 - arg function_decl _mm_move_ss crashtest2.h 1009:1 - isExternal: 1 - isPublic: 1 @@ -14584,12 +14882,16 @@ function_decl _mm_undefined_pd /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - operand + var_decl __Y /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 97:11 - initial + - isUsed: 1 statement_list - operand decl_expr /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 97:17 - statement var_decl __Y /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 97:11 - operand - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - operand + var_decl __Y /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 97:11 - initial + - isUsed: 1 return_expr /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 98:10 - statement init_expr - operand result_decl /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 95:23 - operand @@ -14600,11 +14902,15 @@ function_decl _mm_undefined_pd /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - operand + var_decl __Y /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 97:11 - initial + - isUsed: 1 block - operand var_decl __Y /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 97:11 - block vars - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - block vars + var_decl __Y /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 97:11 - initial + - isUsed: 1 function_decl _mm_setzero_pd /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 103:1 - isExternal: 1 - isPublic: 1 @@ -15984,12 +16290,20 @@ function_decl _mm_sqrt_sd /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 29 - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - operand + call_expr /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 298:39 - initial + - function: LOAD_LANES - initial + Unsupported node type: non_lvalue_expr - arg - initial + Unsupported node type: non_lvalue_expr - arg - initial statement_list - operand decl_expr /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 298:64 - statement var_decl __tmp /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 298:10 - operand - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - operand + call_expr /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 298:39 - initial + - function: LOAD_LANES - initial + Unsupported node type: non_lvalue_expr - arg - initial + Unsupported node type: non_lvalue_expr - arg - initial return_expr /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 299:55 - statement init_expr - operand result_decl /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 296:38 - operand @@ -16004,6 +16318,10 @@ function_decl _mm_sqrt_sd /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 29 - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - block vars + call_expr /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 298:39 - initial + - function: LOAD_LANES - initial + Unsupported node type: non_lvalue_expr - arg - initial + Unsupported node type: non_lvalue_expr - arg - initial function_decl _mm_min_pd /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 303:1 - isExternal: 1 - isPublic: 1 @@ -20858,12 +21176,16 @@ function_decl _mm_undefined_si128 /usr/lib/gcc/x86_64-linux-gnu/5/include/emmint - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - operand + var_decl __Y /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 747:11 - initial + - isUsed: 1 statement_list - operand decl_expr /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 747:17 - statement var_decl __Y /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 747:11 - operand - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - operand + var_decl __Y /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 747:11 - initial + - isUsed: 1 return_expr /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 748:10 - statement init_expr - operand result_decl /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 745:26 - operand @@ -20874,11 +21196,15 @@ function_decl _mm_undefined_si128 /usr/lib/gcc/x86_64-linux-gnu/5/include/emmint - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - operand + var_decl __Y /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 747:11 - initial + - isUsed: 1 block - operand var_decl __Y /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 747:11 - block vars - isUsed: 1 integer_cst 128 - decl size Unsupported node type: vector_type - var type - block vars + var_decl __Y /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 747:11 - initial + - isUsed: 1 function_decl _mm_setzero_si128 /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h 753:1 - isExternal: 1 - isPublic: 1 diff --git a/test/test1-01.txt b/test/test1-01.txt index c550fbf..6ddfb33 100644 --- a/test/test1-01.txt +++ b/test/test1-01.txt @@ -370,6 +370,7 @@ function_decl fun test1.c 21:6 integer_cst 32 - type size integer_cst -2147483648 - min value integer_cst 2147483647 - max value + integer_cst 1 - initial cleanup_point_expr test1.c 26:6 - else expr_stmt - operand convert_expr - expresssion @@ -468,6 +469,7 @@ function_decl fun1 test1.c 29:5 integer_cst 32 - type size integer_cst -2147483648 - min value integer_cst 2147483647 - max value + integer_cst 0 - initial statement_list - operand cleanup_point_expr test1.c 31:8 - statement decl_expr test1.c 31:8 - operand @@ -482,6 +484,7 @@ function_decl fun1 test1.c 29:5 integer_cst 32 - type size integer_cst -2147483648 - min value integer_cst 2147483647 - max value + integer_cst 0 - initial cleanup_point_expr test1.c 31:16 - statement decl_expr test1.c 31:16 - operand var_decl b test1.c 31:14 - operand @@ -495,6 +498,7 @@ function_decl fun1 test1.c 29:5 integer_cst 32 - type size integer_cst -2147483648 - min value integer_cst 2147483647 - max value + integer_cst 1 - initial cleanup_point_expr test1.c 32:5 - statement expr_stmt - operand convert_expr - expresssion @@ -510,6 +514,7 @@ function_decl fun1 test1.c 29:5 integer_cst 32 - type size integer_cst -2147483648 - min value integer_cst 2147483647 - max value + integer_cst 1 - initial var_decl b test1.c 31:14 - operand - isUsed: 1 integer_cst 32 - decl size @@ -521,6 +526,7 @@ function_decl fun1 test1.c 29:5 integer_cst 32 - type size integer_cst -2147483648 - min value integer_cst 2147483647 - max value + integer_cst 1 - initial cleanup_point_expr test1.c 33:10 - statement expr_stmt - operand call_expr test1.c 33:5 - expresssion @@ -540,6 +546,7 @@ function_decl fun1 test1.c 29:5 integer_cst 32 - type size integer_cst -2147483648 - min value integer_cst 2147483647 - max value + integer_cst 0 - initial integer_cst 0 - operand return_expr test1.c 35:12 - then init_expr - operand @@ -566,6 +573,7 @@ function_decl fun1 test1.c 29:5 integer_cst 32 - type size integer_cst -2147483648 - min value integer_cst 2147483647 - max value + integer_cst 0 - initial var_decl b test1.c 31:14 - operand - isUsed: 1 integer_cst 32 - decl size @@ -577,6 +585,7 @@ function_decl fun1 test1.c 29:5 integer_cst 32 - type size integer_cst -2147483648 - min value integer_cst 2147483647 - max value + integer_cst 1 - initial return_expr test1.c 36:14 - else init_expr - operand result_decl test1.c 29:30 - operand @@ -603,6 +612,7 @@ function_decl fun1 test1.c 29:5 integer_cst 32 - type size integer_cst -2147483648 - min value integer_cst 2147483647 - max value + integer_cst 0 - initial var_decl b test1.c 31:14 - block vars - isUsed: 1 integer_cst 32 - decl size @@ -614,6 +624,7 @@ function_decl fun1 test1.c 29:5 integer_cst 32 - type size integer_cst -2147483648 - min value integer_cst 2147483647 - max value + integer_cst 1 - initial function_decl fun2 test1.c 38:6 - isPublic: 1 function_type - function type diff --git a/test/test1-02.txt b/test/test1-02.txt index a95e5e0..533c13b 100644 --- a/test/test1-02.txt +++ b/test/test1-02.txt @@ -254,6 +254,7 @@ 9 integer_cst 9 integer_cst 9 integer_cst +8 integer_cst 2 cleanup_point_expr test1.c 3 expr_stmt 4 convert_expr @@ -323,6 +324,7 @@ 4 integer_cst 4 integer_cst 4 integer_cst +3 integer_cst 2 statement_list 3 cleanup_point_expr test1.c 4 decl_expr test1.c @@ -333,6 +335,7 @@ 7 integer_cst 7 integer_cst 7 integer_cst +6 integer_cst 3 cleanup_point_expr test1.c 4 decl_expr test1.c 5 var_decl test1.c @@ -342,6 +345,7 @@ 7 integer_cst 7 integer_cst 7 integer_cst +6 integer_cst 3 cleanup_point_expr test1.c 4 expr_stmt 5 convert_expr @@ -353,6 +357,7 @@ 9 integer_cst 9 integer_cst 9 integer_cst +8 integer_cst 7 var_decl test1.c 8 integer_cst 8 integer_type @@ -360,6 +365,7 @@ 9 integer_cst 9 integer_cst 9 integer_cst +8 integer_cst 3 cleanup_point_expr test1.c 4 expr_stmt 5 call_expr test1.c @@ -374,6 +380,7 @@ 7 integer_cst 7 integer_cst 7 integer_cst +6 integer_cst 5 integer_cst 4 return_expr test1.c 5 init_expr @@ -392,6 +399,7 @@ 9 integer_cst 9 integer_cst 9 integer_cst +8 integer_cst 7 var_decl test1.c 8 integer_cst 8 integer_type @@ -399,6 +407,7 @@ 9 integer_cst 9 integer_cst 9 integer_cst +8 integer_cst 4 return_expr test1.c 5 init_expr 6 result_decl test1.c @@ -417,6 +426,7 @@ 5 integer_cst 5 integer_cst 5 integer_cst +4 integer_cst 3 var_decl test1.c 4 integer_cst 4 integer_type @@ -424,6 +434,7 @@ 5 integer_cst 5 integer_cst 5 integer_cst +4 integer_cst 0 function_decl test1.c 1 function_type 2 integer_type diff --git a/test/test1-03.txt b/test/test1-03.txt index 8056416..ced6511 100644 --- a/test/test1-03.txt +++ b/test/test1-03.txt @@ -2,9 +2,9 @@ Allocations before cleanup: 80 Allocations after cleanup: 0 Allocations before cleanup: 96 Allocations after cleanup: 0 -Allocations before cleanup: 92 +Allocations before cleanup: 93 Allocations after cleanup: 0 -Allocations before cleanup: 158 +Allocations before cleanup: 168 Allocations after cleanup: 0 Allocations before cleanup: 50 Allocations after cleanup: 0 diff --git a/test/test4-03.txt b/test/test4-03.txt new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/test4-03.txt diff --git a/test/test5-01.txt b/test/test5-01.txt index ebeb2ab..3354491 100644 --- a/test/test5-01.txt +++ b/test/test5-01.txt @@ -1,4 +1,4 @@ -function_decl func1 test5.c 4:6 +function_decl func1 test5.c 10:6 - isPublic: 1 function_type - function type void_type - function return type @@ -37,12 +37,12 @@ function_decl func1 test5.c 4:6 void_type - value type_decl void <built-in> 0:0 - type name - isAutogenerated: 1 - result_decl test5.c 4:33 - function result + result_decl test5.c 10:33 - function result - isAutogenerated: 1 void_type - result type type_decl void <built-in> 0:0 - type name - isAutogenerated: 1 - parm_decl a test5.c 4:16 - argument + parm_decl a test5.c 10:16 - argument integer_type - decl type - precisionBits: 32 - signed @@ -53,7 +53,7 @@ function_decl func1 test5.c 4:6 integer_cst 2147483647 - max value integer_cst 32 - parm size - isUsed: 1 - parm_decl b test5.c 4:24 - argument + parm_decl b test5.c 10:24 - argument pointer_type - decl type integer_type - nested type - precisionBits: 32 @@ -64,7 +64,7 @@ function_decl func1 test5.c 4:6 integer_cst -2147483648 - min value integer_cst 2147483647 - max value integer_cst 64 - parm size - parm_decl c test5.c 4:32 - argument + parm_decl c test5.c 10:32 - argument integer_type - decl type - precisionBits: 32 - signed @@ -74,13 +74,13 @@ function_decl func1 test5.c 4:6 integer_cst -2147483648 - min value integer_cst 2147483647 - max value integer_cst 8 - parm size - cleanup_point_expr test5.c 6:13 - code + cleanup_point_expr test5.c 12:13 - code expr_stmt - operand convert_expr - expresssion modify_expr - operand indirect_ref - operand - isUsed: 1 - parm_decl b test5.c 4:24 - operand + parm_decl b test5.c 10:24 - operand pointer_type - decl type integer_type - nested type - precisionBits: 32 @@ -92,7 +92,7 @@ function_decl func1 test5.c 4:6 integer_cst 2147483647 - max value integer_cst 64 - parm size integer_cst 100 - operand -function_decl func2 test5.c 9:6 +function_decl func2 test5.c 15:6 - isPublic: 1 function_type - function type void_type - function return type @@ -131,12 +131,12 @@ function_decl func2 test5.c 9:6 void_type - value type_decl void <built-in> 0:0 - type name - isAutogenerated: 1 - result_decl test5.c 9:33 - function result + result_decl test5.c 15:33 - function result - isAutogenerated: 1 void_type - result type type_decl void <built-in> 0:0 - type name - isAutogenerated: 1 - parm_decl a test5.c 9:16 - argument + parm_decl a test5.c 15:16 - argument integer_type - decl type - precisionBits: 32 - signed @@ -147,7 +147,7 @@ function_decl func2 test5.c 9:6 integer_cst 2147483647 - max value integer_cst 32 - parm size - isUsed: 1 - parm_decl b test5.c 9:24 - argument + parm_decl b test5.c 15:24 - argument pointer_type - decl type integer_type - nested type - precisionBits: 32 @@ -158,7 +158,7 @@ function_decl func2 test5.c 9:6 integer_cst -2147483648 - min value integer_cst 2147483647 - max value integer_cst 64 - parm size - parm_decl c test5.c 9:32 - argument + parm_decl c test5.c 15:32 - argument integer_type - decl type - precisionBits: 32 - signed @@ -168,14 +168,14 @@ function_decl func2 test5.c 9:6 integer_cst -2147483648 - min value integer_cst 2147483647 - max value integer_cst 8 - parm size - cleanup_point_expr test5.c 11:19 - code + cleanup_point_expr test5.c 17:19 - code expr_stmt - operand convert_expr - expresssion modify_expr - operand indirect_ref - operand - pointer_plus_expr test5.c 11:9 - operand + pointer_plus_expr test5.c 17:9 - operand - isUsed: 1 - parm_decl b test5.c 9:24 - operand + parm_decl b test5.c 15:24 - operand pointer_type - decl type integer_type - nested type - precisionBits: 32 @@ -188,3 +188,774 @@ function_decl func2 test5.c 9:6 integer_cst 64 - parm size integer_cst 4 - operand integer_cst 200 - operand +function_decl func3 test5.c 20:6 +- isPublic: 1 + function_type - function type + void_type - function return type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + tree_list - arg types + integer_type - value + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + tree_list - chain + pointer_type - value + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + tree_list - chain + integer_type - value + - precisionBits: 8 + - isChar: 1 + - signed + type_decl char <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 8 - type size + integer_cst -128 - min value + integer_cst 127 - max value + tree_list - chain + void_type - value + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + result_decl test5.c 20:33 - function result + - isAutogenerated: 1 + void_type - result type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + parm_decl a test5.c 20:16 - argument + integer_type - decl type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 32 - parm size + - isUsed: 1 + parm_decl b test5.c 20:24 - argument + pointer_type - decl type + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 64 - parm size + parm_decl c test5.c 20:32 - argument + integer_type - decl type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 8 - parm size + cleanup_point_expr test5.c 22:25 - code + expr_stmt - operand + convert_expr - expresssion + modify_expr - operand + indirect_ref - operand + pointer_plus_expr test5.c 22:9 - operand + - isUsed: 1 + parm_decl b test5.c 20:24 - operand + pointer_type - decl type + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 64 - parm size + integer_cst 8 - operand + integer_cst 300 - operand +function_decl func5 test5.c 25:6 +- isPublic: 1 + function_type - function type + void_type - function return type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + tree_list - arg types + integer_type - value + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + tree_list - chain + pointer_type - value + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + tree_list - chain + integer_type - value + - precisionBits: 8 + - isChar: 1 + - signed + type_decl char <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 8 - type size + integer_cst -128 - min value + integer_cst 127 - max value + tree_list - chain + void_type - value + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + result_decl test5.c 25:33 - function result + - isAutogenerated: 1 + void_type - result type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + parm_decl a test5.c 25:16 - argument + integer_type - decl type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 32 - parm size + - isUsed: 1 + parm_decl b test5.c 25:24 - argument + pointer_type - decl type + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 64 - parm size + parm_decl c test5.c 25:32 - argument + integer_type - decl type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 8 - parm size + bind_expr test5.c 28:22 - code + var_decl var1 test5.c 27:9 - operand + - isUsed: 1 + integer_cst 32 - decl size + integer_type - var type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 1 - initial + statement_list - operand + cleanup_point_expr test5.c 27:16 - statement + decl_expr test5.c 27:16 - operand + var_decl var1 test5.c 27:9 - operand + - isUsed: 1 + integer_cst 32 - decl size + integer_type - var type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 1 - initial + cleanup_point_expr test5.c 28:22 - statement + expr_stmt - operand + convert_expr - expresssion + modify_expr - operand + indirect_ref - operand + pointer_plus_expr test5.c 28:12 - operand + - isUsed: 1 + parm_decl b test5.c 25:24 - operand + pointer_type - decl type + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 64 - parm size + nop_expr - operand + mult_expr - operand + nop_expr - operand + var_decl var1 test5.c 27:9 - operand + - isUsed: 1 + integer_cst 32 - decl size + integer_type - var type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 1 - initial + integer_cst 4 - operand + integer_cst 400 - operand + block - operand + var_decl var1 test5.c 27:9 - block vars + - isUsed: 1 + integer_cst 32 - decl size + integer_type - var type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 1 - initial +function_decl func6 test5.c 31:6 +- isPublic: 1 + function_type - function type + void_type - function return type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + tree_list - arg types + integer_type - value + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + tree_list - chain + pointer_type - value + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + tree_list - chain + integer_type - value + - precisionBits: 8 + - isChar: 1 + - signed + type_decl char <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 8 - type size + integer_cst -128 - min value + integer_cst 127 - max value + tree_list - chain + void_type - value + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + result_decl test5.c 31:33 - function result + - isAutogenerated: 1 + void_type - result type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + parm_decl a test5.c 31:16 - argument + integer_type - decl type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 32 - parm size + - isUsed: 1 + parm_decl b test5.c 31:24 - argument + pointer_type - decl type + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 64 - parm size + parm_decl c test5.c 31:32 - argument + integer_type - decl type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 8 - parm size + bind_expr test5.c 34:16 - code + var_decl var2 test5.c 33:10 - operand + - isUsed: 1 + integer_cst 64 - decl size + pointer_type - var type + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + - isUsed: 1 + parm_decl b test5.c 31:24 - initial + statement_list - operand + decl_expr test5.c 33:17 - statement + var_decl var2 test5.c 33:10 - operand + - isUsed: 1 + integer_cst 64 - decl size + pointer_type - var type + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + - isUsed: 1 + parm_decl b test5.c 31:24 - initial + cleanup_point_expr test5.c 34:16 - statement + expr_stmt - operand + convert_expr - expresssion + modify_expr - operand + indirect_ref - operand + var_decl var2 test5.c 33:10 - operand + - isUsed: 1 + integer_cst 64 - decl size + pointer_type - var type + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + - isUsed: 1 + parm_decl b test5.c 31:24 - initial + integer_cst 500 - operand + block - operand + var_decl var2 test5.c 33:10 - block vars + - isUsed: 1 + integer_cst 64 - decl size + pointer_type - var type + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + - isUsed: 1 + parm_decl b test5.c 31:24 - initial +function_decl func7 test5.c 37:6 +- isPublic: 1 + function_type - function type + void_type - function return type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + tree_list - arg types + integer_type - value + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + tree_list - chain + pointer_type - value + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + tree_list - chain + integer_type - value + - precisionBits: 8 + - isChar: 1 + - signed + type_decl char <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 8 - type size + integer_cst -128 - min value + integer_cst 127 - max value + tree_list - chain + void_type - value + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + result_decl test5.c 37:33 - function result + - isAutogenerated: 1 + void_type - result type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + parm_decl a test5.c 37:16 - argument + integer_type - decl type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 32 - parm size + - isUsed: 1 + parm_decl b test5.c 37:24 - argument + pointer_type - decl type + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 64 - parm size + parm_decl c test5.c 37:32 - argument + integer_type - decl type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 8 - parm size + bind_expr test5.c 40:16 - code + var_decl var3 test5.c 39:10 - operand + - isUsed: 1 + integer_cst 64 - decl size + pointer_type - var type + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + pointer_plus_expr test5.c 39:20 - initial + - isUsed: 1 + parm_decl b test5.c 37:24 - operand + pointer_type - decl type + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 64 - parm size + integer_cst 48 - operand + statement_list - operand + decl_expr test5.c 39:22 - statement + var_decl var3 test5.c 39:10 - operand + - isUsed: 1 + integer_cst 64 - decl size + pointer_type - var type + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + pointer_plus_expr test5.c 39:20 - initial + - isUsed: 1 + parm_decl b test5.c 37:24 - operand + pointer_type - decl type + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 64 - parm size + integer_cst 48 - operand + cleanup_point_expr test5.c 40:16 - statement + expr_stmt - operand + convert_expr - expresssion + modify_expr - operand + indirect_ref - operand + var_decl var3 test5.c 39:10 - operand + - isUsed: 1 + integer_cst 64 - decl size + pointer_type - var type + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + pointer_plus_expr test5.c 39:20 - initial + - isUsed: 1 + parm_decl b test5.c 37:24 - operand + pointer_type - decl type + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 64 - parm size + integer_cst 48 - operand + integer_cst 600 - operand + block - operand + var_decl var3 test5.c 39:10 - block vars + - isUsed: 1 + integer_cst 64 - decl size + pointer_type - var type + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + pointer_plus_expr test5.c 39:20 - initial + - isUsed: 1 + parm_decl b test5.c 37:24 - operand + pointer_type - decl type + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 64 - parm size + integer_cst 48 - operand +function_decl func8 test5.c 43:6 +- isPublic: 1 + function_type - function type + void_type - function return type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + tree_list - arg types + integer_type - value + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + tree_list - chain + pointer_type - value + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + tree_list - chain + integer_type - value + - precisionBits: 8 + - isChar: 1 + - signed + type_decl char <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 8 - type size + integer_cst -128 - min value + integer_cst 127 - max value + tree_list - chain + void_type - value + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + result_decl test5.c 43:36 - function result + - isAutogenerated: 1 + void_type - result type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + parm_decl a test5.c 43:16 - argument + integer_type - decl type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 32 - parm size + - isUsed: 1 + parm_decl bptr test5.c 43:24 - argument + pointer_type - decl type + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 64 - parm size + parm_decl c test5.c 43:35 - argument + integer_type - decl type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 8 - parm size + bind_expr test5.c 46:17 - code + var_decl var4 test5.c 45:11 - operand + - isUsed: 1 + integer_cst 64 - decl size + pointer_type - var type + pointer_type - nested type + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + addr_expr - initial + - isUsed: 1 + parm_decl bptr test5.c 43:24 - operand + pointer_type - decl type + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 64 - parm size + statement_list - operand + decl_expr test5.c 45:19 - statement + var_decl var4 test5.c 45:11 - operand + - isUsed: 1 + integer_cst 64 - decl size + pointer_type - var type + pointer_type - nested type + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + addr_expr - initial + - isUsed: 1 + parm_decl bptr test5.c 43:24 - operand + pointer_type - decl type + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 64 - parm size + cleanup_point_expr test5.c 46:17 - statement + expr_stmt - operand + convert_expr - expresssion + modify_expr - operand + indirect_ref - operand + indirect_ref - operand + var_decl var4 test5.c 45:11 - operand + - isUsed: 1 + integer_cst 64 - decl size + pointer_type - var type + pointer_type - nested type + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + addr_expr - initial + - isUsed: 1 + parm_decl bptr test5.c 43:24 - operand + pointer_type - decl type + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 64 - parm size + integer_cst 700 - operand + block - operand + var_decl var4 test5.c 45:11 - block vars + - isUsed: 1 + integer_cst 64 - decl size + pointer_type - var type + pointer_type - nested type + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + addr_expr - initial + - isUsed: 1 + parm_decl bptr test5.c 43:24 - operand + pointer_type - decl type + integer_type - nested type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 64 - parm size diff --git a/test/test5-02.txt b/test/test5-02.txt index e9557cf..d077f83 100644 --- a/test/test5-02.txt +++ b/test/test5-02.txt @@ -1,2 +1,7 @@ func1: pointer_type b, func2: pointer_type b, +func3: pointer_type b, +func5: pointer_type b, +func6: pointer_type b, +func7: pointer_type b, +func8: pointer_type bptr, diff --git a/test/test5-03.txt b/test/test5-03.txt index 506dead..0ac71e5 100644 --- a/test/test5-03.txt +++ b/test/test5-03.txt @@ -1,4 +1,30 @@ test5.c: In function 'void func1(int, int*, char)': -test5.c:6:13: warning: Using variable without check for NULL +test5.c:12:13: warning: Using variable without check for NULL *b = 100; ^ +test5.c: In function 'void func2(int, int*, char)': +test5.c:17:9: warning: Using variable without check for NULL + *(1 + b) = 200; + ^ +test5.c: In function 'void func3(int, int*, char)': +test5.c:22:9: warning: Using variable without check for NULL + *(1 + (1 + b)) = 300; + ^ +test5.c: In function 'void func5(int, int*, char)': +test5.c:28:12: warning: Using variable without check for NULL + *(var1 + b) = 400; + ^ +test5.c: In function 'void func6(int, int*, char)': +test5.c:33:10: warning: Using variable without check for NULL + int *var2 = b; + ^ +test5.c:33:10: warning: Using variable without check for NULL +test5.c:33:10: warning: Using variable without check for NULL +test5.c:33:10: warning: Using variable without check for NULL +test5.c: In function 'void func7(int, int*, char)': +test5.c:39:20: warning: Using variable without check for NULL + int *var3 = 12 + b; + ^ +test5.c:39:20: warning: Using variable without check for NULL +test5.c:39:20: warning: Using variable without check for NULL +test5.c:39:20: warning: Using variable without check for NULL diff --git a/test/test5-04.txt b/test/test5-04.txt new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/test5-04.txt diff --git a/test/test5.c b/test/test5.c index 0312c52..320e202 100644 --- a/test/test5.c +++ b/test/test5.c @@ -1,5 +1,11 @@ void func1(int a, int *b, char c); void func2(int a, int *b, char c); +void func3(int a, int *b, char c); +void func4(int a, int *b, char c); +void func5(int a, int *b, char c); +void func6(int a, int *b, char c); +void func7(int a, int *b, char c); +void func8(int a, int *b, char c); void func1(int a, int *b, char c) { @@ -10,3 +16,32 @@ void func2(int a, int *b, char c) { *(1 + b) = 200; } + +void func3(int a, int *b, char c) +{ + *(1 + (1 + b)) = 300; +} + +void func5(int a, int *b, char c) +{ + int var1 = 1; + *(var1 + b) = 400; +} + +void func6(int a, int *b, char c) +{ + int *var2 = b; + *var2 = 500; +} + +void func7(int a, int *b, char c) +{ + int *var3 = 12 + b; + *var3 = 600; +} + +void func8(int a, int *bptr, char c) +{ + int **var4 = &bptr; + **var4 = 700; +} |