Johannes Obermayr
Johannes Obermayr
To fix build error: ``` diff --git a/Ghidra/Processors/RISCV/certification.manifest b/Ghidra/Processors/RISCV/certification.manifest index 07cddb0454..9e40a0da46 100644 --- a/Ghidra/Processors/RISCV/certification.manifest +++ b/Ghidra/Processors/RISCV/certification.manifest @@ -5,6 +5,7 @@ data/languages/RV32G.pspec||GHIDRA||||END| data/languages/RV32GC.pspec||GHIDRA||||END| data/languages/RV32I.pspec||GHIDRA||||END| data/languages/RV32IC.pspec||GHIDRA||||END| +data/languages/RV32IMACFX.pspec||GHIDRA||||END| data/languages/RV32IMC.pspec||GHIDRA||||END| data/languages/RV64G.pspec||GHIDRA||||END| data/languages/RV64GC.pspec||GHIDRA||||END| @@ -16,6...
> Can this be extended to `MOVSW.REP`? And combinations of `MOVSW.REP` followed by `MOVSB.REP`? Can you provide an example file or debug output?
To fix build errors: ``` diff --git a/Ghidra/Processors/RISCV/certification.manifest b/Ghidra/Processors/RISCV/certification.manifest index 569138783..b498068db 100644 --- a/Ghidra/Processors/RISCV/certification.manifest +++ b/Ghidra/Processors/RISCV/certification.manifest @@ -40,6 +40,9 @@ data/languages/riscv.rvc.sinc||GHIDRA||||END| data/languages/riscv.rvv.sinc||GHIDRA||||END| data/languages/riscv.table.sinc||GHIDRA||||END| data/languages/riscv.zi.sinc||GHIDRA||||END| +data/languages/riscv.zvbb.sinc||GHIDRA||||END| +data/languages/riscv.zvkng.sinc||GHIDRA||||END| +data/languages/riscv.zvksg.sinc||GHIDRA||||END| data/languages/riscv32-fp.cspec||GHIDRA||||END| data/languages/riscv32.cspec||GHIDRA||||END| data/languages/riscv32.dwarf||GHIDRA||||END|...
``` diff --git a/Ghidra/Processors/RISCV/data/languages/riscv.zfh.sinc b/Ghidra/Processors/RISCV/data/languages/riscv.zfh.sinc index 696766a208..f8e0c69a4b 100644 --- a/Ghidra/Processors/RISCV/data/languages/riscv.zfh.sinc +++ b/Ghidra/Processors/RISCV/data/languages/riscv.zfh.sinc @@ -10,7 +10,7 @@ :flh frd,immI(rs1) is immI & frd & rs1 & op0001=0x3 & op0204=0x1 & op0506=0x0...
I got it somehow "working" after reanalysing with master. But there is still a difference to IDA (fe10 vs FE08):  
Did you forget to `git add Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/pcodeCPort/context/ParserWalker.java` ?
Thanks for the hint. 39baf3a removed ParserWalker. Current squashed patch to build against "master": https://github.com/jobermayr/ghidra-staging/blob/master/4812-Introduce-operand-offset-C-and-Java.patch
You did not take my comment from 12/12/2022 into account: ``` > Task :Decompiler:compileSleighLinux_x86_64ExecutableSleighCpp /tmp/ghidra/Ghidra/Features/Decompiler/src/decompile/cpp/slghscan.cc: In function ???ghidra::int4 ghidra::find_symbol()???: /tmp/ghidra/Ghidra/Features/Decompiler/src/decompile/cpp/slghscan.cc:1578:5: error: ???yylval??? was not declared in this scope 1578 |...
``` > Task :Decompiler:compileSleighLinux_x86_64ExecutableSleighCpp /tmp/ghidra/Ghidra/Features/Decompiler/src/decompile/cpp/pcodeparse.cc:2929:7: error: no declaration matches ???ghidra::uintb ghidra::PcodeSnippet::allocateTemp()??? 2929 | uintb PcodeSnippet::allocateTemp(void) | ^~~~~~~~~~~~ In file included from /tmp/ghidra/Ghidra/Features/Decompiler/src/decompile/cpp/pcodeparse.cc:88: /tmp/ghidra/Ghidra/Features/Decompiler/src/decompile/cpp/pcodeparse.hh:80:17: note: candidate is: ???virtual ghidra::uint4 ghidra::PcodeSnippet::allocateTemp()??? 80...
> Can you point me to your build system ? It seems as if you've extended "make realclean" within `Ghidra/Features/Decompiler/src/decompile/cpp` Not really. I only created a [makeBison.sh](https://github.com/jobermayr/ghidra-staging/blob/master/0000-Regenerate-with-Bison-3.8.2.patch#L2287) to quickly regenerate...