diff --git a/build.sh b/build.sh index 361b5fa4..8dccc60f 100755 --- a/build.sh +++ b/build.sh @@ -18,7 +18,7 @@ git_hash_full=$(git rev-parse HEAD) # --- Compile/Link Line Definitions ------------------------------------------- cc_cflags_gcc="" -cc_cflags_clang=${cc_sanitize}" -fdiagnostics-absolute-paths -Wno-for-loop-analysis -Wno-incompatible-pointer-types-discards-qualifiers -Wno-initializer-overrides -Wno-compare-distinct-pointer-types -Wno-single-bit-bitfield-constant-conversion -Wno-deprecated-declarations -Wno-writable-strings -Wno-unknown-warning-option -Wno-deprecated-register -Wno-unused-local-typedef" +cc_cflags_clang=${cc_sanitize}" -fdiagnostics-absolute-paths -Wno-for-loop-analysis -Wno-incompatible-pointer-types-discards-qualifiers -Wno-initializer-overrides -Wno-compare-distinct-pointer-types -Wno-single-bit-bitfield-constant-conversion -Wno-deprecated-declarations -Wno-writable-strings -Wno-unknown-warning-option -Wno-deprecated-register -Wno-unused-local-typedef -msse2" cc_common="-mcx16 -I../src/ -I../local/ -D_GNU_SOURCE -g -DBUILD_GIT_HASH=\"$git_hash\" -DBUILD_GIT_HASH_FULL=\"$git_hash_full\" -Wall -Wno-missing-braces -Wno-unused-function -Wno-unused-variable -Wno-unused-but-set-variable -Wno-unused-value -D_USE_MATH_DEFINES -Dstrdup=_strdup -Dgnu_printf=printf" cc_debug="-g -O0 -DBUILD_DEBUG=1 ${cc_common}" cc_release="-g -O2 -DBUILD_DEBUG=0 ${cc_common}" diff --git a/project.raddbg b/project.raddbg index b43ee327..67496dda 100644 --- a/project.raddbg +++ b/project.raddbg @@ -25,6 +25,8 @@ target: { executable: "build/torture.exe" working_directory: build + enabled: 1 + arguments: "raddbg/*" } target: { @@ -45,7 +47,6 @@ target: target: { executable: "build/radbin.exe" - working_directory: "build/" + working_directory: build arguments: "--breakpad fat.so --capture" - enabled: 1 } diff --git a/src/base/base_core.h b/src/base/base_core.h index 6df8361b..34410b19 100644 --- a/src/base/base_core.h +++ b/src/base/base_core.h @@ -272,6 +272,8 @@ # error Atomic intrinsics not defined for this compiler / architecture combination. # endif #elif COMPILER_CLANG || COMPILER_GCC +#include +#include # define ins_atomic_u128_eval_cond_assign(x,k,c) (B32)__atomic_compare_exchange_n((__int128 *)(x),(__int128 *)(c),*(__int128 *)(k),0,__ATOMIC_SEQ_CST,__ATOMIC_SEQ_CST) # define ins_atomic_u64_eval(x) __atomic_load_n((U64 *)(x), __ATOMIC_SEQ_CST) # define ins_atomic_u64_inc_eval(x) __atomic_add_fetch((U64 *)(x), 1, __ATOMIC_SEQ_CST) diff --git a/src/eval2/eval2.c b/src/eval2/eval2.c index 4754c20d..9ee5e7be 100644 --- a/src/eval2/eval2.c +++ b/src/eval2/eval2.c @@ -230,6 +230,15 @@ e2_type_kind_from_rdi(RDI_TypeKind k) case RDI_TypeKind_IncompleteEnum: {result = E2_TypeKind_IncompleteEnum;}break; case RDI_TypeKind_Bitfield: {result = E2_TypeKind_Bitfield;}break; case RDI_TypeKind_Variadic: {result = E2_TypeKind_Variadic;}break; + + case RDI_TypeKind_BF16: + case RDI_TypeKind_F96: + case RDI_TypeKind_Decimal32: + case RDI_TypeKind_Decimal64: + case RDI_TypeKind_Decimal128: + { + // NOTE(rjf): currently unsupported + }break; } return result; } @@ -240,6 +249,8 @@ e2_type_group_from_kind(E2_TypeKind k) RDI_EvalTypeGroup result = 0; switch(k) { + case E2_TypeKind_COUNT:{}break; + case E2_TypeKind_Null: case E2_TypeKind_Void: case E2_TypeKind_F16: case E2_TypeKind_F32PP: case E2_TypeKind_F48: case E2_TypeKind_F80: case E2_TypeKind_F128: @@ -252,6 +263,13 @@ e2_type_group_from_kind(E2_TypeKind k) case E2_TypeKind_IncompleteUnion: case E2_TypeKind_IncompleteEnum: case E2_TypeKind_Bitfield: case E2_TypeKind_Variadic: + case E2_TypeKind_HResult: + case E2_TypeKind_Set: + case E2_TypeKind_Lens: + case E2_TypeKind_LensSpec: + case E2_TypeKind_MetaExpr: + case E2_TypeKind_MetaDisplayName: + case E2_TypeKind_MetaDescription: {result = RDI_EvalTypeGroup_Other;}break; case E2_TypeKind_Handle: