[pypy-dev] Request to make `makedev`, `major` and `minor` macros
John Zhang
John.Zhang at anu.edu.au
Tue Dec 6 18:36:13 EST 2016
Thanks Armin!
I will keep my eyes open for other cases and let you know. :)
Cheers,
John Zhang
------------------------------------------------------
John Zhang
Research Assistant
Programming Languages, Design & Implementation Division
Computer Systems Group
ANU College of Engineering & Computer Science
108 North Rd
The Australian National University
Acton ACT 2601
john.zhang at anu.edu.au<mailto:john.zhang at anu.edu.au>
On 6 Dec. 2016, at 20:58, Armin Rigo <armin.rigo at gmail.com<mailto:armin.rigo at gmail.com>> wrote:
Hi John,
On 6 December 2016 at 08:20, John Zhang <John.Zhang at anu.edu.au<mailto:John.Zhang at anu.edu.au>> wrote:
I would like to request making the definitions of
`rpython.rlib.rposix.c_makedev/c_major/c_minor` include explicit macro
functions, i.e., passing `macro=_MACRO_ON_POSIX` to the `rffi.llexternal`
function.
Checked in 08ec669ddab9. Note that the 'macro' keyword is used inside
PyPy for a single purpose: to teach the JIT that it cannot directly
write a call to the macro. Instead it writes a call to the wrapper
generated by rffi.py. In this case this problem was fixed by marking
the functions like "def makedev(..):" with "@jit.dont_look_inside",
which is equivalent from the point of view of the JIT. But I have now
removed these dont_look_inside and instead added "macro=True"
arguments, as it is more natural---and also indeed more useful to
non-standard backends. Feel free to ask if you find other similar
cases!
A bientôt,
Armin.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/pypy-dev/attachments/20161206/255e5062/attachment.html>
More information about the pypy-dev
mailing list