diff options
| -rw-r--r-- | libs/rs/rsScriptC_Lib.cpp | 40 | ||||
| -rw-r--r-- | libs/rs/scriptc/rs_core.rsh | 9 | ||||
| -rw-r--r-- | libs/rs/scriptc/rs_math.rsh | 44 |
3 files changed, 62 insertions, 31 deletions
diff --git a/libs/rs/rsScriptC_Lib.cpp b/libs/rs/rsScriptC_Lib.cpp index dc30afc..ac32810 100644 --- a/libs/rs/rsScriptC_Lib.cpp +++ b/libs/rs/rsScriptC_Lib.cpp @@ -267,18 +267,31 @@ const void * SC_getElementAtXYZ(RsAllocation va, uint32_t x, uint32_t y, uint32_ static void SC_debugF(const char *s, float f) { LOGE("%s %f, 0x%08x", s, f, *((int *) (&f))); } -static void SC_debugFv2(const char *s, rsvF_2 fv) { - float *f = (float *)&fv; - LOGE("%s {%f, %f}", s, f[0], f[1]); +static void SC_debugFv2(const char *s, float f1, float f2) { + LOGE("%s {%f, %f}", s, f1, f2); } -static void SC_debugFv3(const char *s, rsvF_4 fv) { - float *f = (float *)&fv; - LOGE("%s {%f, %f, %f}", s, f[0], f[1], f[2]); +static void SC_debugFv3(const char *s, float f1, float f2, float f3) { + LOGE("%s {%f, %f, %f}", s, f1, f2, f3); } -static void SC_debugFv4(const char *s, rsvF_4 fv) { - float *f = (float *)&fv; - LOGE("%s {%f, %f, %f, %f}", s, f[0], f[1], f[2], f[3]); +static void SC_debugFv4(const char *s, float f1, float f2, float f3, float f4) { + LOGE("%s {%f, %f, %f, %f}", s, f1, f2, f3, f4); } +static void SC_debugFM4v4(const char *s, const float *f) { + LOGE("%s {%f, %f, %f, %f", s, f[0], f[4], f[8], f[12]); + LOGE("%s %f, %f, %f, %f", s, f[1], f[5], f[9], f[13]); + LOGE("%s %f, %f, %f, %f", s, f[2], f[6], f[10], f[14]); + LOGE("%s %f, %f, %f, %f}", s, f[3], f[7], f[11], f[15]); +} +static void SC_debugFM3v3(const char *s, const float *f) { + LOGE("%s {%f, %f, %f", s, f[0], f[3], f[6]); + LOGE("%s %f, %f, %f", s, f[1], f[4], f[7]); + LOGE("%s %f, %f, %f}",s, f[2], f[5], f[8]); +} +static void SC_debugFM2v2(const char *s, const float *f) { + LOGE("%s {%f, %f", s, f[0], f[2]); + LOGE("%s %f, %f}",s, f[1], f[3]); +} + static void SC_debugI32(const char *s, int32_t i) { LOGE("%s %i 0x%x", s, i, i); } @@ -394,9 +407,12 @@ static ScriptCState::SymbolTable_t gSyms[] = { // Debug { "_Z7rsDebugPKcf", (void *)&SC_debugF }, - { "_Z7rsDebugPKcDv2_f", (void *)&SC_debugFv2 }, - { "_Z7rsDebugPKcDv3_f", (void *)&SC_debugFv3 }, - { "_Z7rsDebugPKcDv4_f", (void *)&SC_debugFv4 }, + { "_Z7rsDebugPKcff", (void *)&SC_debugFv2 }, + { "_Z7rsDebugPKcfff", (void *)&SC_debugFv3 }, + { "_Z7rsDebugPKcffff", (void *)&SC_debugFv4 }, + { "_Z7rsDebugPKcPK12rs_matrix4x4", (void *)&SC_debugFM4v4 }, + { "_Z7rsDebugPKcPK12rs_matrix3x3", (void *)&SC_debugFM3v3 }, + { "_Z7rsDebugPKcPK12rs_matrix2x2", (void *)&SC_debugFM2v2 }, { "_Z7rsDebugPKci", (void *)&SC_debugI32 }, { "_Z7rsDebugPKcj", (void *)&SC_debugU32 }, { "_Z7rsDebugPKcPKv", (void *)&SC_debugP }, diff --git a/libs/rs/scriptc/rs_core.rsh b/libs/rs/scriptc/rs_core.rsh index 93e009a..85f3b25 100644 --- a/libs/rs/scriptc/rs_core.rsh +++ b/libs/rs/scriptc/rs_core.rsh @@ -1,6 +1,15 @@ #ifndef __RS_CORE_RSH__ #define __RS_CORE_RSH__ +static void __attribute__((overloadable)) rsDebug(const char *s, float2 v) { + rsDebug(s, v.x, v.y); +} +static void __attribute__((overloadable)) rsDebug(const char *s, float3 v) { + rsDebug(s, v.x, v.y, v.z); +} +static void __attribute__((overloadable)) rsDebug(const char *s, float4 v) { + rsDebug(s, v.x, v.y, v.z, v.w); +} static uchar4 __attribute__((overloadable)) rsPackColorTo8888(float r, float g, float b) { diff --git a/libs/rs/scriptc/rs_math.rsh b/libs/rs/scriptc/rs_math.rsh index 66171d8..45f6bf4 100644 --- a/libs/rs/scriptc/rs_math.rsh +++ b/libs/rs/scriptc/rs_math.rsh @@ -1,6 +1,31 @@ #ifndef __RS_MATH_RSH__ #define __RS_MATH_RSH__ +// Debugging, print to the LOG a description string and a value. +extern void __attribute__((overloadable)) + rsDebug(const char *, float); +extern void __attribute__((overloadable)) + rsDebug(const char *, float, float); +extern void __attribute__((overloadable)) + rsDebug(const char *, float, float, float); +extern void __attribute__((overloadable)) + rsDebug(const char *, float, float, float, float); +extern void __attribute__((overloadable)) + rsDebug(const char *, const rs_matrix4x4 *); +extern void __attribute__((overloadable)) + rsDebug(const char *, const rs_matrix3x3 *); +extern void __attribute__((overloadable)) + rsDebug(const char *, const rs_matrix2x2 *); +extern void __attribute__((overloadable)) + rsDebug(const char *, int); +extern void __attribute__((overloadable)) + rsDebug(const char *, uint); +extern void __attribute__((overloadable)) + rsDebug(const char *, const void *); +#define RS_DEBUG(a) rsDebug(#a, a) +#define RS_DEBUG_MARKER rsDebug(__FILE__, __LINE__) + + #include "rs_cl.rsh" #include "rs_core.rsh" @@ -31,25 +56,6 @@ extern const void * __attribute__((overloadable)) extern const void * __attribute__((overloadable)) rsGetElementAt(rs_allocation, uint32_t x, uint32_t y, uint32_t z); - -// Debugging, print to the LOG a description string and a value. -extern void __attribute__((overloadable)) - rsDebug(const char *, float); -extern void __attribute__((overloadable)) - rsDebug(const char *, float2); -extern void __attribute__((overloadable)) - rsDebug(const char *, float3); -extern void __attribute__((overloadable)) - rsDebug(const char *, float4); -extern void __attribute__((overloadable)) - rsDebug(const char *, int); -extern void __attribute__((overloadable)) - rsDebug(const char *, uint); -extern void __attribute__((overloadable)) - rsDebug(const char *, const void *); -#define RS_DEBUG(a) rsDebug(#a, a) -#define RS_DEBUG_MARKER rsDebug(__FILE__, __LINE__) - // Return a random value between 0 (or min_value) and max_malue. extern int __attribute__((overloadable)) rsRand(int max_value); |
