source:
rtems/c/src/lib/libbsp/arm/lm3s69xx/0005-Evil-hack-for-BASEPRI-BASEPRI_MAX.patch
@
e263c16
Last change on this file since e263c16 was e263c16, checked in by Sebastian Huber <sebastian.huber@…>, on 09/24/11 at 13:23:42 | |
---|---|
|
|
File size: 1.6 KB |
-
target-arm/helper.c
From ee20f52f56b076e71f617e4e3cfe413bea73b824 Mon Sep 17 00:00:00 2001 From: Sebastian Huber <sebastian.huber@embedded-brains.de> Date: Fri, 16 Sep 2011 21:28:21 +0200 Subject: [PATCH 5/6] Evil hack for BASEPRI/BASEPRI_MAX. --- target-arm/helper.c | 11 +++++++++++ 1 files changed, 11 insertions(+), 0 deletions(-) diff --git a/target-arm/helper.c b/target-arm/helper.c index 2fd45c4..d5fc9d3 100644
a b uint32_t HELPER(v7m_mrs)(CPUState *env, uint32_t reg) 1997 1997 return (env->uncached_cpsr & CPSR_I) != 0; 1998 1998 case 17: /* BASEPRI */ 1999 1999 case 18: /* BASEPRI_MAX */ 2000 /* FIXME */ 2001 return (env->uncached_cpsr & CPSR_I) != 0; 2002 #if 0 2000 2003 return env->v7m.basepri; 2004 #endif 2001 2005 case 19: /* FAULTMASK */ 2002 2006 return (env->uncached_cpsr & CPSR_F) != 0; 2003 2007 case 20: /* CONTROL */ … … void HELPER(v7m_msr)(CPUState *env, uint32_t reg, uint32_t val) 2052 2056 env->uncached_cpsr &= ~CPSR_I; 2053 2057 break; 2054 2058 case 17: /* BASEPRI */ 2059 case 18: /* BASEPRI_MAX */ 2060 if (val) 2061 env->uncached_cpsr |= CPSR_I; 2062 else 2063 env->uncached_cpsr &= ~CPSR_I; 2064 #if 0 2055 2065 env->v7m.basepri = val & 0xff; 2056 2066 break; 2057 2067 case 18: /* BASEPRI_MAX */ … … void HELPER(v7m_msr)(CPUState *env, uint32_t reg, uint32_t val) 2059 2069 if (val != 0 && (val < env->v7m.basepri || env->v7m.basepri == 0)) 2060 2070 env->v7m.basepri = val; 2061 2071 break; 2072 #endif 2062 2073 case 19: /* FAULTMASK */ 2063 2074 if (val & 1) 2064 2075 env->uncached_cpsr |= CPSR_F;
Note: See TracBrowser
for help on using the repository browser.