[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] RFC: [PATCH 0/5] Explicitly annotating coroutine_fn fun

From: Kevin Wolf
Subject: Re: [Qemu-devel] RFC: [PATCH 0/5] Explicitly annotating coroutine_fn functions
Date: Tue, 6 Aug 2013 11:37:54 +0200
User-agent: Mutt/1.5.21 (2010-09-15)

Am 05.08.2013 um 20:44 hat Charlie Shepherd geschrieben:
> This patch series is a follow up to a previous RFC about converting functions
> that dynamically yield execution depending on whether they are in executing in
> a coroutine context or not to be explicitly statically annotated. This change
> is necessary for the GSoC CPC project, but was also agreed in an IRC
> conversation on #qemu to be benefical overall if it can be upstream before the
> end of the project. This is an update to see if the approach I'm taking to
> implementing this conversion is correct.
> In order to statically check the tree to ensure the annotations are correct,
> I've been using CPC to compile the QEMU tree. This does a source to source
> translation to convert coroutine code to continuation-passing style (the
> purpose of the GSoC project), but as a side benefit statically checks
> annotations (any functions annotated with coroutine_fn are transformed into
> CPS, so have a different "calling style" to the standard C convention).
> In order to compile the tree with CPC:
>  $ git clone git://github.com/kerneis/cpc.git
>  $ cd cpc
>  $ make
>  $ ./configure
>  $ make
>  $ cd ..
>  $ export CPC=$(pwd)/cpc/bin/cpc
>  $ cd qemu
>  $ mkdir -p bin/cpc
>  $ cd bin/cpc
>  $ ../../configure --enable-debug --disable-werror  
> --target-list=x86_64-softmmu     --cc="$CPC"     
> --extra-cflags="--noMakeStaticGlobal --useLogicalOperators --useCaseRange 
> --save-temps -U__SSE2__ -w -Dcoroutine_fn='__attribute__((__cps__))' 
> --docpsInference  --warnall "
>  $ make

Against which tree is this? It didn't apply on top of qemu-git master,
nor on my block branch.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]