Branch Coverage

lib/SPVM/Builder/src/spvm_api_type.c
Criterion Covered Total %
branch 32 50 64.0


line true false branch
45 4681529 82639 if (type_dimension == 0) {
48 798603 3882926 switch (basic_type_category) {
62 82639 0 else if (type_dimension >= 1) {
75 0 0 if (type_dimension == 0) {
78 0 0 switch (basic_type_category) {
89 0 0 else if (type_dimension >= 1) {
101 0 0 if (dimension > 0) {
102 0 0 if (SPVM_API_TYPE_is_object_type(runtime, basic_type, dimension - 1, flag)) {
117 0 0 if (type_dimension == 1) {
120 0 0 switch (basic_type_category) {
143 72 0 if (basic_type->category == SPVM_NATIVE_C_BASIC_TYPE_CATEGORY_MULNUM) {
169 308561 3806 if (assignability > 0) {
172 88 3718 else if (assignability < 0) {
180 2872 846 if (dist_basic_type->id == src_basic_type->id && dist_type_dimension == src_type_dimension) {
2868 4 if (dist_basic_type->id == src_basic_type->id && dist_type_dimension == src_type_dimension) {
183 830 20 else if (dist_type_dimension == 0 && dist_basic_type_category == SPVM_NATIVE_C_BASIC_TYPE_CATEGORY_ANY_OBJECT) {
758 72 else if (dist_type_dimension == 0 && dist_basic_type_category == SPVM_NATIVE_C_BASIC_TYPE_CATEGORY_ANY_OBJECT) {
184 0 758 assert(src_type_dimension >= 0);
187 16 76 else if (dist_type_dimension == 1 && dist_basic_type_category == SPVM_NATIVE_C_BASIC_TYPE_CATEGORY_ANY_OBJECT) {
4 12 else if (dist_type_dimension == 1 && dist_basic_type_category == SPVM_NATIVE_C_BASIC_TYPE_CATEGORY_ANY_OBJECT) {
188 4 0 if (src_type_dimension >= 1) {
195 84 4 else if (dist_type_dimension == src_type_dimension) {
196 18 66 if (dist_basic_type_category == SPVM_NATIVE_C_BASIC_TYPE_CATEGORY_INTERFACE) {
199 56 10 else if (dist_basic_type_category == SPVM_NATIVE_C_BASIC_TYPE_CATEGORY_CLASS) {
212 3658 60 SPVM_HASH_set(runtime->assignability_symtable, assinability_key, strlen(assinability_key), (void*)(intptr_t)(isa ? 1 : -1));