riscv: Fix RISCV builds by updating its use of pseudoInst().
authorGabe Black <gabeblack@google.com>
Fri, 27 Mar 2020 11:01:38 +0000 (04:01 -0700)
committerGabe Black <gabeblack@google.com>
Fri, 27 Mar 2020 21:14:51 +0000 (21:14 +0000)
The signature of the function and RISCV's use of it changed
simultaneously, were independently verified, and then separately merged.
The combination of the two does not build successfully.

This change updates RISCV so it uses the new signature.

Change-Id: I6a944e664640c9086583d546870ed1fbfa84a3e7
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/27163
Reviewed-by: Giacomo Travaglini <giacomo.travaglini@arm.com>
Reviewed-by: Nils Asmussen <nils.asmussen@barkhauseninstitut.org>
Maintainer: Gabe Black <gabeblack@google.com>
Tested-by: Gem5 Cloud Project GCB service account <345032938727@cloudbuild.gserviceaccount.com>
Tested-by: kokoro <noreply+kokoro@google.com>
src/arch/riscv/isa/formats/m5ops.isa

index 2a16959c9de4ba62ab958208ab80e9de58e6ed85..11834f67babefc5dd89a5a8121b491c3ee22260d 100644 (file)
 
 def format M5Op() {{
     iop = InstObjParams(name, Name, 'PseudoOp',
-                        'a0 = PseudoInst::pseudoInst<PseudoInstABI>('
-                            + 'xc->tcBase(), M5FUNC)',
+                        'uint64_t result;\n'
+                        'PseudoInst::pseudoInst<PseudoInstABI>('
+                            'xc->tcBase(), M5FUNC, result);\n'
+                        'a0 = result',
                         ['IsNonSpeculative', 'IsSerializeAfter'])
     header_output = BasicDeclare.subst(iop)
     decoder_output = BasicConstructor.subst(iop)