diff options
Diffstat (limited to 'src/arch/arm/utility.hh')
-rw-r--r-- | src/arch/arm/utility.hh | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/arch/arm/utility.hh b/src/arch/arm/utility.hh index 8fb6558be..4b87dcc13 100644 --- a/src/arch/arm/utility.hh +++ b/src/arch/arm/utility.hh @@ -1,5 +1,5 @@ /* - * Copyright (c) 2010, 2012-2013 ARM Limited + * Copyright (c) 2010, 2012-2013, 2016 ARM Limited * All rights reserved * * The license below extends only to copyright in the software and shall @@ -161,6 +161,16 @@ bool ELIs64(ThreadContext *tc, ExceptionLevel el); bool isBigEndian64(ThreadContext *tc); +static inline uint8_t +itState(CPSR psr) +{ + ITSTATE it = 0; + it.top6 = psr.it2; + it.bottom2 = psr.it1; + + return (uint8_t)it; +} + /** * Removes the tag from tagged addresses if that mode is enabled. * @param addr The address to be purified. |