diff mbox

[v3,01/15] target-arm: Correct check for non-EL3

Message ID 1432881807-18164-2-git-send-email-edgar.iglesias@gmail.com
State New
Headers show

Commit Message

Edgar E. Iglesias May 29, 2015, 6:43 a.m. UTC
From: "Edgar E. Iglesias" <edgar.iglesias@xilinx.com>

Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
---
 target-arm/op_helper.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

John Snow June 1, 2015, 8:10 p.m. UTC | #1
On 05/29/2015 02:43 AM, Edgar E. Iglesias wrote:
> From: "Edgar E. Iglesias" <edgar.iglesias@xilinx.com>
> 
> Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
> ---
>  target-arm/op_helper.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/target-arm/op_helper.c b/target-arm/op_helper.c
> index 3f5b9ab..7583ae7 100644
> --- a/target-arm/op_helper.c
> +++ b/target-arm/op_helper.c
> @@ -421,7 +421,7 @@ void HELPER(access_check_cp_reg)(CPUARMState *env, void *rip, uint32_t syndrome)
>          /* Requesting a trap to EL2 when we're in EL3 or S-EL0/1 is
>           * a bug in the access function.
>           */
> -        assert(!arm_is_secure(env) && !arm_current_el(env) == 3);
> +        assert(!arm_is_secure(env) && arm_current_el(env) != 3);
>          target_el = 2;
>          break;
>      case CP_ACCESS_TRAP_EL3:
> 

This patch could even be liberated from this series if it hasn't been
already, since the clang build is currently broken with -Werror without
this fix.

Reviewed-by: John Snow <jsnow@redhat.com>
Peter Maydell June 1, 2015, 8:26 p.m. UTC | #2
On 1 June 2015 at 21:10, John Snow <jsnow@redhat.com> wrote:
>
>
> On 05/29/2015 02:43 AM, Edgar E. Iglesias wrote:
>> From: "Edgar E. Iglesias" <edgar.iglesias@xilinx.com>
>>
>> Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
>> ---
>>  target-arm/op_helper.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/target-arm/op_helper.c b/target-arm/op_helper.c
>> index 3f5b9ab..7583ae7 100644
>> --- a/target-arm/op_helper.c
>> +++ b/target-arm/op_helper.c
>> @@ -421,7 +421,7 @@ void HELPER(access_check_cp_reg)(CPUARMState *env, void *rip, uint32_t syndrome)
>>          /* Requesting a trap to EL2 when we're in EL3 or S-EL0/1 is
>>           * a bug in the access function.
>>           */
>> -        assert(!arm_is_secure(env) && !arm_current_el(env) == 3);
>> +        assert(!arm_is_secure(env) && arm_current_el(env) != 3);
>>          target_el = 2;
>>          break;
>>      case CP_ACCESS_TRAP_EL3:
>>
>
> This patch could even be liberated from this series if it hasn't been
> already, since the clang build is currently broken with -Werror without
> this fix.

Only clang 3.5, I suspect -- my clang build uses Werror but it's
an older clang. I have queued the first half of this series into
target-arm.next anyway (might directly apply this one as a buildfix).

-- PMM
John Snow June 1, 2015, 8:31 p.m. UTC | #3
On 06/01/2015 04:26 PM, Peter Maydell wrote:
> On 1 June 2015 at 21:10, John Snow <jsnow@redhat.com> wrote:
>>
>>
>> On 05/29/2015 02:43 AM, Edgar E. Iglesias wrote:
>>> From: "Edgar E. Iglesias" <edgar.iglesias@xilinx.com>
>>>
>>> Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
>>> ---
>>>  target-arm/op_helper.c | 2 +-
>>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/target-arm/op_helper.c b/target-arm/op_helper.c
>>> index 3f5b9ab..7583ae7 100644
>>> --- a/target-arm/op_helper.c
>>> +++ b/target-arm/op_helper.c
>>> @@ -421,7 +421,7 @@ void HELPER(access_check_cp_reg)(CPUARMState *env, void *rip, uint32_t syndrome)
>>>          /* Requesting a trap to EL2 when we're in EL3 or S-EL0/1 is
>>>           * a bug in the access function.
>>>           */
>>> -        assert(!arm_is_secure(env) && !arm_current_el(env) == 3);
>>> +        assert(!arm_is_secure(env) && arm_current_el(env) != 3);
>>>          target_el = 2;
>>>          break;
>>>      case CP_ACCESS_TRAP_EL3:
>>>
>>
>> This patch could even be liberated from this series if it hasn't been
>> already, since the clang build is currently broken with -Werror without
>> this fix.
> 
> Only clang 3.5, I suspect -- my clang build uses Werror but it's
> an older clang. I have queued the first half of this series into
> target-arm.next anyway (might directly apply this one as a buildfix).
> 
> -- PMM
> 

Oh, yes, this is with Clang 3.5.0 as seen in F21. I don't have a
particularly convenient way to test older versions at the moment, so I
do all of my clang regression testing on this version.

Wouldn't mind the buildfix for this and the other issue spotted by MST
to help make build testing sane again this week :)

Thanks,
--js
Peter Maydell June 2, 2015, 12:55 p.m. UTC | #4
On 1 June 2015 at 21:31, John Snow <jsnow@redhat.com> wrote:
>
>
> On 06/01/2015 04:26 PM, Peter Maydell wrote:
>> On 1 June 2015 at 21:10, John Snow <jsnow@redhat.com> wrote:
>>>
>>>
>>> On 05/29/2015 02:43 AM, Edgar E. Iglesias wrote:
>>>> From: "Edgar E. Iglesias" <edgar.iglesias@xilinx.com>
>>>>
>>>> Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
>>>> ---
>>>>  target-arm/op_helper.c | 2 +-
>>>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>>>
>>>> diff --git a/target-arm/op_helper.c b/target-arm/op_helper.c
>>>> index 3f5b9ab..7583ae7 100644
>>>> --- a/target-arm/op_helper.c
>>>> +++ b/target-arm/op_helper.c
>>>> @@ -421,7 +421,7 @@ void HELPER(access_check_cp_reg)(CPUARMState *env, void *rip, uint32_t syndrome)
>>>>          /* Requesting a trap to EL2 when we're in EL3 or S-EL0/1 is
>>>>           * a bug in the access function.
>>>>           */
>>>> -        assert(!arm_is_secure(env) && !arm_current_el(env) == 3);
>>>> +        assert(!arm_is_secure(env) && arm_current_el(env) != 3);
>>>>          target_el = 2;
>>>>          break;
>>>>      case CP_ACCESS_TRAP_EL3:
>>>>
>>>
>>> This patch could even be liberated from this series if it hasn't been
>>> already, since the clang build is currently broken with -Werror without
>>> this fix.
>>
>> Only clang 3.5, I suspect -- my clang build uses Werror but it's
>> an older clang. I have queued the first half of this series into
>> target-arm.next anyway (might directly apply this one as a buildfix).
>>
>> -- PMM
>>
>
> Oh, yes, this is with Clang 3.5.0 as seen in F21. I don't have a
> particularly convenient way to test older versions at the moment, so I
> do all of my clang regression testing on this version.
>
> Wouldn't mind the buildfix for this and the other issue spotted by MST
> to help make build testing sane again this week :)

I've applied this patch to master; thanks.

-- PMM
diff mbox

Patch

diff --git a/target-arm/op_helper.c b/target-arm/op_helper.c
index 3f5b9ab..7583ae7 100644
--- a/target-arm/op_helper.c
+++ b/target-arm/op_helper.c
@@ -421,7 +421,7 @@  void HELPER(access_check_cp_reg)(CPUARMState *env, void *rip, uint32_t syndrome)
         /* Requesting a trap to EL2 when we're in EL3 or S-EL0/1 is
          * a bug in the access function.
          */
-        assert(!arm_is_secure(env) && !arm_current_el(env) == 3);
+        assert(!arm_is_secure(env) && arm_current_el(env) != 3);
         target_el = 2;
         break;
     case CP_ACCESS_TRAP_EL3: