tests: run ds390 struct return tests
ds390: enable div functions in flat24
ds390: support struct returns in flat24
ds390: move stack and pointer code into helpers
Thanks, this was very helpful. I traced the extra dereference to geniCodeSEParms(). I submitted [patches:#516]. The patch keeps the source address while preparing the struct argument, so the struct is dereferenced only once when passed to the function.
ChangeLog: * src/SDCCicode.c (geniCodeSEParms): Keep the source address when passing a dereferenced struct by value. * support/regression/tests/bug-4054.c: New regression test.
Fix double dereference when passing a dereferenced struct
ChangeLog: * src/mcs51/peeph.def (257.b): Do not apply this rule inside jump tables. * support/regression/tests/bug-4066.c: New regression test.