Chun-Chen TK Hsu has uploaded this change for review. ( https://gem5-review.googlesource.com/9101


Change subject: arch, arm: Fix implicit-fallthrough GCC warnings
......................................................................

arch, arm: Fix implicit-fallthrough GCC warnings

GCC 7 generates spurious fallthrough warnings in nested switch blocks
where the inner switch block return.  There is already a GCC fix [1]
submitted for review but, until it is merged into GCC trunk, GEM5 will
not build with GCC 7 due to these fallthrough warnings.  This patch
silences the spurious fallthrough warnings by appending a break
statement in the outer switch cases.

Note there is another GEM5 patch [2] to fix other fallthrough warnings.

[1] https://gcc.gnu.org/ml/gcc-patches/2018-02/msg01105.html
[2] https://gem5-review.googlesource.com/c/public/gem5/+/8541

Change-Id: I97cd8bfa90a88e93cee60cf27a8c93611d11a242
Signed-off-by: Chun-Chen Hsu <chunchen...@google.com>
---
M src/arch/arm/isa/formats/aarch64.isa
M src/arch/isa_parser.py
2 files changed, 2 insertions(+), 1 deletion(-)



diff --git a/src/arch/arm/isa/formats/aarch64.isa b/src/arch/arm/isa/formats/aarch64.isa
index 68f6006..6f79a8d 100644
--- a/src/arch/arm/isa/formats/aarch64.isa
+++ b/src/arch/arm/isa/formats/aarch64.isa
@@ -1842,6 +1842,7 @@
                         return new Unknown64(machInst);
                     }
                 }
+              break;
               case 0x1:
               {
                 if (bits(machInst, 31) ||
diff --git a/src/arch/isa_parser.py b/src/arch/isa_parser.py
index 6817349..102aa01 100755
--- a/src/arch/isa_parser.py
+++ b/src/arch/isa_parser.py
@@ -2206,7 +2206,7 @@
         codeObj = t[3]
         # just wrap the decoding code from the block as a case in the
         # outer switch statement.
-        codeObj.wrap_decode_block('\n%s\n' % ''.join(case_list))
+ codeObj.wrap_decode_block('\n%s\n' % ''.join(case_list), 'break;\n')
         codeObj.has_decode_default = (case_list == ['default:'])
         t[0] = codeObj


--
To view, visit https://gem5-review.googlesource.com/9101
To unsubscribe, or for help writing mail filters, visit https://gem5-review.googlesource.com/settings

Gerrit-Project: public/gem5
Gerrit-Branch: master
Gerrit-Change-Id: I97cd8bfa90a88e93cee60cf27a8c93611d11a242
Gerrit-Change-Number: 9101
Gerrit-PatchSet: 1
Gerrit-Owner: Chun-Chen TK Hsu <chunchen...@google.com>
Gerrit-MessageType: newchange
_______________________________________________
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to