This prevents segmentation fault that can occur on cortex_a targets if
gdb connection is established before it's halted and CPSR examined.
Change-Id: Id996200e0fd95440496509c1fecaabbdbf425e23
Tested-by: Henrik Nordstrom <hno@squid-cache.org>
Signed-off-by: Paul Fertser <fercerpav@gmail.com>
Reviewed-on: http://openocd.zylin.com/1446
Tested-by: jenkins
Reviewed-by: Spencer Oliver <spen@spen-soft.co.uk>
if (regnum > 16)
return NULL;
- r = arm->core_cache->reg_list + arm->map[regnum];
+ if (!arm->map) {
+ LOG_ERROR("Register map is not available yet, the target is not fully initialised");
+ r = arm->core_cache->reg_list + regnum;
+ } else
+ r = arm->core_cache->reg_list + arm->map[regnum];
/* e.g. invalid CPSR said "secure monitor" mode on a core
* that doesn't support it...