ruby: fix and/or precedence in slicc
authorLena Olson <leolson@google.com>
Sun, 5 Feb 2017 20:47:37 +0000 (14:47 -0600)
committerAndreas Sandberg <andreas.sandberg@arm.com>
Wed, 1 Mar 2017 11:58:37 +0000 (11:58 +0000)
commitefcd8ae0244ec2791b58c749815c2f7a835eb78f
tree7acec73ecc56ca4a2b2ac4b8cafaff58e262edd7
parent93e20c9a73523f2b95fc65b99a0192f83eb7d8f4
ruby: fix and/or precedence in slicc

The slicc compiler currently treats && and || with the same precedence.
This is highly non-intuitive to people used to C, and was probably an
error. This patch makes && bind tighter than ||.

For example, previously:
if (A || B && C)
compiled to:
if ((A || B) && C)
With this patch, it compiles to:
if (A || (B && C))

Change-Id: Idbbd5b50cc86a8d6601045adc14a253284d7b791
Signed-off-by: Lena Olson (leolson@google.com)
Reviewed-on: https://gem5-review.googlesource.com/2168
Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
Reviewed-by: Joe Gross <criusx@gmail.com>
Reviewed-by: Sooraj Puthoor <puthoorsooraj@gmail.com>
Maintainer: Jason Lowe-Power <jason@lowepower.com>
[ Rebased onto master ]
Signed-off-by: Andreas Sandberg <andreas.sandberg@arm.com>
COPYING
src/mem/slicc/parser.py