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

Cannot compile with GCC 13: inline assembly constraint is incorrect #127

Open
vinz6751 opened this issue Aug 27, 2024 · 0 comments
Open

Comments

@vinz6751
Copy link

Hello
I'm using Cygwin64 with Vincent Rivière's GCC 13 Mintelf and the libcmini now fails to build. (I hadn't pulled it in a long time and I see it changed quite a bit)
hereis what I'm getting:

$ make VERBOSE=yes
mkdir -p build/. build/./objs
echo "CC build/./objs/strtoul_int.o"
CC build/./objs/strtoul_int.o
m68k-atari-mintelf-gcc -MMD -MP -MF build/./objs/strtoul_int.d -DSTDIO_MAP_NEWLINE   -Iinclude -c sources/strtoul_int.c -o build/./objs/strtoul_int.o
/tmp/ccbZta8H.s: Assembler messages:
/tmp/ccbZta8H.s:17: Error: operands mismatch -- statement `scs %a1' ignored
/tmp/ccbZta8H.s:40: Error: operands mismatch -- statement `st %a1' ignored
make: *** [Makefile:161: build/./objs/strtoul_int.o] Error 1

Obviously we can't do scs and st against an address register.
i think the "+g"(*overflow) constraint on line 28 and 41 should specify "d" rather than "g" to force the use of a data register.

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

1 participant