Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Should still work with sdcc fork of asxxxx #4

Open
spth opened this issue Nov 5, 2019 · 3 comments
Open

Should still work with sdcc fork of asxxxx #4

spth opened this issue Nov 5, 2019 · 3 comments

Comments

@spth
Copy link

spth commented Nov 5, 2019

It would be better, if, when --gas is not used, everything still works as before.

However, something seems wrong, as regression testing for stm8 or stm8-large fails:

philipp@notebook5:/tmp/sdcc-gas/support/regression$ make test-stm8
Running stm8 regression tests
Multiple definition of ___str_0
Multiple definition of ___str_1
Multiple definition of ___str_2
Multiple definition of ___str_3
Multiple definition of ___str_4
Multiple definition of ___str_5
Multiple definition of ___str_6
Multiple definition of ___str_7
Multiple definition of ___str_8

?ASlink-Warning-Undefined Global 's_INITIALIZED' referenced by module 'testfwk'
XaviDCR92 added a commit that referenced this issue Nov 6, 2019
Issue #1 was caused because code_name and data_name had been incorrectly
defined as const-qualified pointers, but this must be an exception for
the z80 backend, as stated by the comments.

Issue #2 has been solved by removing the --gas switch from SDCCmain.c,
renaming it to "--asm=" (as requested by PKK) and moved to STM8's main.c,
so the option is limited to those targets supporting it.

Issue #4 was because of SDCCglue.c, that generated local labels using
"!labeldef" instead of "!slabeldef", causing those __str_%d labels to be
printed as "__str_%d::" (the double colons stand for globa label according
to asxxx documentation) instead of "__str_%d":".

I ran the regression tests and most of them passed, but "wchar" returned another
"Multiple definition of..." error that I cannot explain so far. It is better than
nothing, though.
@XaviDCR92
Copy link
Owner

XaviDCR92 commented Nov 6, 2019

Solved on commit cf1d3ae. Could you please try it yourself?

@spth
Copy link
Author

spth commented Nov 7, 2019

stm8 regression tests now work for me. pdk15 still fails.
And I see lots of tests failing for stm8-large.

@XaviDCR92
Copy link
Owner

Confirmed stm8-large tests fail:

Summary for 'stm8-large': 5 abnormal stops ( 2 invalid instructions, ), 45 failures, 11371 tests, 2102 test cases, 2432889 bytes, 29279079 ticks
   Failure: gen/stm8-large/bug-1918/bug-1918
   Failure: results/stm8-large/bug-2124.out
   Failure: gen/stm8-large/bug-2373/bug-2373
   Failure: results/stm8-large/bug-2455.out
   Failure: gen/stm8-large/bug-2732/bug-2732
   Failure: gen/stm8-large/bug-2822/bug-2822
   Failure: results/stm8-large/bug-927659.out
   Failure: gen/stm8-large/bug1057979/bug1057979
   Failure: gen/stm8-large/bug3521024/bug3521024
   Failure: gen/stm8-large/dhrystone/dhrystone
   Failure: gen/stm8-large/funptrs/funptrs_type_bool
   Failure: gen/stm8-large/funptrs/funptrs_type_char
   abnormal stop: gen/stm8-large/funptrs/funptrs_type_int
   Failure: gen/stm8-large/funptrs/funptrs_type_long
   Failure: results/stm8-large/gcc-torture-execute-20021118-2.out
   Failure: results/stm8-large/gcc-torture-execute-20021120-3.out
   Failure: gen/stm8-large/gcc-torture-execute-20030626-1/gcc-torture-execute-20030626-1
   Failure: results/stm8-large/gcc-torture-execute-20030626-2.out
   Failure: results/stm8-large/gcc-torture-execute-20070201-1.out
   Failure: results/stm8-large/gcc-torture-execute-20121108-1.out
   Failure: results/stm8-large/gcc-torture-execute-921208-1.out
   Failure: gen/stm8-large/gcc-torture-execute-930513-1/gcc-torture-execute-930513-1
   Failure: results/stm8-large/gcc-torture-execute-930702-1.out
   Failure: results/stm8-large/gcc-torture-execute-960327-1.out
   Failure: results/stm8-large/gcc-torture-execute-991112-1.out
   Failure: gen/stm8-large/gcc-torture-execute-func-ptr-1/gcc-torture-execute-func-ptr-1
   Failure: gen/stm8-large/gcc-torture-execute-pr34456/gcc-torture-execute-pr34456
   Failure: results/stm8-large/gcc-torture-execute-pr68390.out
   Failure: results/stm8-large/gcc-torture-execute-pr78586.out
   Failure: gen/stm8-large/qsort/qsort_type_signed_int
   Invalid instruction: gen/stm8-large/qsort/qsort_type_signed_long
   abnormal stop: gen/stm8-large/qsort/qsort_type_signed_long
   abnormal stop: gen/stm8-large/snprintf/snprintf_type_FLOAT
   Failure: gen/stm8-large/snprintf/snprintf_type_INT
   Invalid instruction: gen/stm8-large/snprintf/snprintf_type_LONG
   abnormal stop: gen/stm8-large/snprintf/snprintf_type_LONG
   abnormal stop: gen/stm8-large/snprintf/snprintf_type_STRING
   Failure: results/stm8-large/z88dk.out

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants