On 25 April 2011 23:31, Aurelien Jarno <aurel...@aurel32.net> wrote:
> On Mon, Apr 25, 2011 at 10:59:52PM +0100, Peter Maydell wrote:
>> On 25 April 2011 22:09, Aurelien Jarno <aurel...@aurel32.net> wrote:
>> > Instead of having this complex test for all cp15 access, but only for
>> > catching a few access to performance registers, wouldn't it make more
>> > sense to have this test and an exception triggering directly in
>> > helper.c?
>>
>> That was what my first design did, but in discussions on IRC
>> with Paul Brook he basically said that you can't generate an
>> exception in the helper routine, you have to either generate
>> runtime code to do the test or throw away the TBs. Unfortunately
>> I forget the exact rationale, so I've cc'd Paul to remind me :-)
>
> This is something strange, plenty of targets are raising exceptions from
> helpers without any problem.

You'd at minimum need to move the cp15 helper functions to a different
file, they're currently in helper.c which doesn't get compiled
with access to the global 'env' register. But I got the impression
there was something more significant than that.

-- PMM

Reply via email to