diff options
author | Doug Gilbert <dgilbert@us.ibm.com> | 2016-09-06 13:24:38 -0500 |
---|---|---|
committer | Sachin Gupta <sgupta2m@in.ibm.com> | 2016-09-07 06:14:05 -0400 |
commit | c207cc4cdcc56bb6ea63fb2d0192588b40388e61 (patch) | |
tree | 0c384274460baa285578c06adb266dfc5cb17a6e | |
parent | ebdc059e5a24ee3d0555b3a47c467c4032c4f3ad (diff) | |
download | talos-sbe-c207cc4cdcc56bb6ea63fb2d0192588b40388e61.tar.gz talos-sbe-c207cc4cdcc56bb6ea63fb2d0192588b40388e61.zip |
MSR read gets re-ordered in code
Change-Id: I219b7f7854ae00093bf322f77265f97b47691660
RTC: 159553
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/29279
Reviewed-by: Michael S. Floyd <mfloyd@us.ibm.com>
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Reviewed-by: Brian T. Vanderpool <vanderp@us.ibm.com>
Tested-by: PPE CI <ppe-ci+hostboot@us.ibm.com>
Reviewed-by: YUE DU <daviddu@us.ibm.com>
Reviewed-by: Gregory S. Still <stillgs@us.ibm.com>
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/29280
Reviewed-by: Hostboot Team <hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: Sachin Gupta <sgupta2m@in.ibm.com>
-rw-r--r-- | src/import/chips/p9/procedures/ppe/pk/ppe42/ppe42_msr.h | 4 | ||||
-rw-r--r-- | src/import/chips/p9/procedures/ppe/pk/ppe42/ppe42_spr.h | 6 |
2 files changed, 5 insertions, 5 deletions
diff --git a/src/import/chips/p9/procedures/ppe/pk/ppe42/ppe42_msr.h b/src/import/chips/p9/procedures/ppe/pk/ppe42/ppe42_msr.h index 8660f20d..a82b90b7 100644 --- a/src/import/chips/p9/procedures/ppe/pk/ppe42/ppe42_msr.h +++ b/src/import/chips/p9/procedures/ppe/pk/ppe42/ppe42_msr.h @@ -1,7 +1,7 @@ /* IBM_PROLOG_BEGIN_TAG */ /* This is an automatically generated prolog. */ /* */ -/* $Source: import/chips/p9/procedures/ppe/pk/ppe42/ppe42_msr.h $ */ +/* $Source: src/import/chips/p9/procedures/ppe/pk/ppe42/ppe42_msr.h $ */ /* */ /* OpenPOWER sbe Project */ /* */ @@ -69,7 +69,7 @@ /// Move From MSR #define mfmsr() \ - ({uint32_t __msr; \ + ({volatile uint32_t __msr; \ asm volatile ("mfmsr %0" : "=r" (__msr)); \ __msr;}) diff --git a/src/import/chips/p9/procedures/ppe/pk/ppe42/ppe42_spr.h b/src/import/chips/p9/procedures/ppe/pk/ppe42/ppe42_spr.h index f95139bd..227215ab 100644 --- a/src/import/chips/p9/procedures/ppe/pk/ppe42/ppe42_spr.h +++ b/src/import/chips/p9/procedures/ppe/pk/ppe42/ppe42_spr.h @@ -1,7 +1,7 @@ /* IBM_PROLOG_BEGIN_TAG */ /* This is an automatically generated prolog. */ /* */ -/* $Source: import/chips/p9/procedures/ppe/pk/ppe42/ppe42_spr.h $ */ +/* $Source: src/import/chips/p9/procedures/ppe/pk/ppe42/ppe42_spr.h $ */ /* */ /* OpenPOWER sbe Project */ /* */ @@ -139,7 +139,7 @@ typedef union /// Note that \a sprn must be a compile-time constant. #define mfspr(sprn) \ - ({uint32_t __value; \ + ({volatile uint32_t __value; \ asm volatile ("mfspr %0, %1" : "=r" (__value) : "i" (sprn)); \ __value;}) @@ -149,7 +149,7 @@ typedef union /// Note that \a sprn must be a compile-time constant. #define mtspr(sprn, value) \ - ({uint32_t __value = (value); \ + ({volatile uint32_t __value = (value); \ asm volatile ("mtspr %0, %1" : : "i" (sprn), "r" (__value)); \ }) |