Hmm, I'm not sure that's possible. As far as I know, gem5 only supports parameter configuration of SimObjects in simulation scripts. You might be able to create a SimObject that has a lambda expression as a parameter, where the lambda expression specifies a custom instruction's behavior, but I don't know if gem5 supports that.
On Sat, Feb 17, 2018 at 5:30 AM, Robert Scheffel < robert.scheff...@tu-dresden.de> wrote: > Hi Alec, > > I'm trying to achieve the latter. A user should be able to add custom > instructions without having to touch the decoder. > > Robert > > Am 14.02.2018 um 03:08 schrieb Alec Roelke: > > Hi Robert, > > > > Are you trying to reduce compilation time of gem5 itself by bypassing the > > decoder description, or are you trying to add the ability to specify > custom > > instructions in a simulation script so gem5 doesn't have to be recompiled > > at all to add new ones? > > > > -Alec Roelke > > > > On Thu, Feb 8, 2018 at 10:34 AM, Robert Scheffel < > > robert.scheff...@tu-dresden.de> wrote: > > > >> Hi all, > >> > >> as part of my diploma thesis I want to implement an interface for custom > >> instructions for the RISC-V ISA. > >> The goal is to have a mechanism (plug-in, ...) where a user can easily > add > >> an instruction, define its opcode and its behaviour without touching the > >> decoder. > >> > >> As changing the underlying decoder results in recompiling and rebuilding > >> of almost the whole binary, I think it might be better to define entry > >> points in the decoder that give control to a decoding function within a > >> plug-in. > >> This way the decoder doesn't need to be touched, when a new instruction > is > >> added. > >> A first idea, that comes to my mind, is to describe the behaviour and > >> opcodes in a C++ file. From all existing descriptions a custom decoder > is > >> generated, that takes over decoding, once the gem5 decoder reaches the > >> entry point for custom instructions. > >> > >> Do you see any problem with this approach? Is there a better way to > >> implement such an interface? > >> > >> Kind regards > >> > >> Robert > >> > >> _______________________________________________ > >> gem5-dev mailing list > >> gem5-dev@gem5.org > >> http://m5sim.org/mailman/listinfo/gem5-dev > > _______________________________________________ > > gem5-dev mailing list > > gem5-dev@gem5.org > > http://m5sim.org/mailman/listinfo/gem5-dev > > > _______________________________________________ > gem5-dev mailing list > gem5-dev@gem5.org > http://m5sim.org/mailman/listinfo/gem5-dev > _______________________________________________ gem5-dev mailing list gem5-dev@gem5.org http://m5sim.org/mailman/listinfo/gem5-dev