Hi, Does pypy-1.7 support translating to the CLI backend? On FreeBSD I get the following error: # mono --version Mono JIT compiler version 2.10.6 (tarball Thu Nov 24 17:06:01 UTC 2011) Copyright (C) 2002-2011 Novell, Inc, Xamarin, Inc and Contributors. www.mono-project.com TLS: normal SIGSEGV: normal Notification: kqueue Architecture: amd64 Disabled: none Misc: softdebug LLVM: supported, not enabled. GC: Included Boehm (with typed GC and Parallel Mark) # /usr/local/bin/pypy translate.py --backend=cli -Ojit targetpypystandalone.py <snip/> [translation:ERROR] File "/pypy/translator/cli/query.py", line 25, in get_cli_class [translation:ERROR] return desc.get_cliclass() [translation:ERROR] File "/pypy/translator/cli/query.py", line 169, in get_cliclass [translation:ERROR] BASETYPE = get_ootype(self.BaseType) [translation:ERROR] File "/pypy/translator/cli/query.py", line 91, in get_ootype [translation:ERROR] cliclass = get_cli_class(name) [translation:ERROR] File "/pypy/translator/cli/query.py", line 25, in get_cli_class [translation:ERROR] return desc.get_cliclass() [translation:ERROR] File "/pypy/translator/cli/query.py", line 178, in get_cliclass [translation:ERROR] _static_meth, ootype.StaticMethod) [translation:ERROR] File "/pypy/translator/cli/query.py", line 197, in group_methods [translation:ERROR] res[name] = overload(*meths, **attrs) [translation:ERROR] File "/pypy/translator/cli/dotnet.py", line 242, in __init__ [translation:ERROR] self._resolver = resolver(overloadings) [translation:ERROR] File "/pypy/rpython/ootypesystem/ootype.py", line 1290, in __init__ [translation:ERROR] self._check_overloadings() [translation:ERROR] File "/pypy/rpython/ootypesystem/ootype.py", line 1297, in _check_overloadings [translation:ERROR] raise TypeError, 'Bad overloading' [translation:ERROR] TypeError: Bad overloading Regards, David
2011/12/13 David Naylor <naylor.b.david@gmail.com>
Does pypy-1.7 support translating to the CLI backend?
[...]
[translation:ERROR] File "/pypy/rpython/ootypesystem/ootype.py", line 1297, in _check_overloadings [translation:ERROR] raise TypeError, 'Bad overloading' [translation:ERROR] TypeError: Bad overloading
This particular error occurs on 64bit architecture (where long == longlong) It seems that the CLI backend is not yet ready for 64bit. This is probably not too difficult to fix, patches are welcome! -- Amaury Forgeot d'Arc
On 12/13/2011 11:42 PM, Amaury Forgeot d'Arc wrote:
This particular error occurs on 64bit architecture (where long == longlong) It seems that the CLI backend is not yet ready for 64bit. This is probably not too difficult to fix, patches are welcome!
actually, it is not so easy. The problem is "native" CLI integer is 32 bit, so we want to translate lltype.Signed to int32, even on 64 bit. But when translating on 64 bit, the translation toolchain thinks that lltype.Signed is rffi.LONG, and things are confused. Hopefully, the work that Christian is doing for win64 will help the CLI and JVM backends too. ciao, Anto
participants (4)
-
Amaury Forgeot d'Arc
-
Antonio Cuni
-
David Naylor
-
Maciej Fijalkowski