On 12/07/15 12:08, Alexander Monakov wrote:
Hello Nathan,

On Mon, 7 Dec 2015, Nathan Sidwell wrote:
This patch changes call emission to look for a noreturn note and emit a trap
insn after the call.  The JIT  no longer explodes.

I think there's a potential issue with the patch: when the noreturn function
has a non-void return value, your patch places 'trap' between 'call' and

Aren't noreturn fns required to be void? It certainly doesn't make sense for them to do otherwise.

'ld.param' insns.  That violates the PTX specification, which demands:

     All st.param instructions used for passing arguments to function call must
     immediately precede the corresponding call instruction and ld.param
     instruction used for collecting return value must immediately follow the
     call instruction without any control flow alteration.

so I don't think this can happen ...

nathan

Reply via email to