Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/patch'
Browse files Browse the repository at this point in the history
  • Loading branch information
ryanmkurtz committed Jul 22, 2024
2 parents 220d6d9 + 649c182 commit b272e74
Show file tree
Hide file tree
Showing 24 changed files with 169 additions and 79 deletions.
16 changes: 8 additions & 8 deletions Ghidra/Processors/ARM/data/languages/ARMneon.sinc
Original file line number Diff line number Diff line change
Expand Up @@ -619,9 +619,9 @@ define pcodeop SHA1HashUpdateParity;
local op1 = Qd;
local op2 = Qn;
local op3 = Qm;
local op2lo:8 = op2(0);
local op1hi:8 = op1(8);
op2 = zext(op2lo << 64) | zext(op1hi);
local op2LowerHalf = zext(op2[0,64]) << 64;
local op1UpperHalf = zext(op1[64,64]);
op2 = op2LowerHalf | op1UpperHalf;
Qd = op1 ^ op2 ^ op3;
}

Expand All @@ -637,15 +637,15 @@ define pcodeop SHA1HashUpdateParity;
local X = Qd;
local Y = Qm;
local Tm = X ^ (Y >> 32);
local t0:4 = Tm(0);
local t1:4 = Tm(4);
local t2:4 = Tm(8);
local t3:4 = Tm(12);
local t0:4 = Tm[0, 32];
local t1:4 = Tm[32, 32];
local t2:4 = Tm[64, 32];
local t3:4 = Tm[96, 32];
local W0:4 = (t0 << 1 | t0 >> 31);
local W1:4 = (t1 << 1 | t1 >> 31);
local W2:4 = (t2 << 1 | t2 >> 31);
local W3:4 = (t3 << 1 | t3 >> 31) ^ (t0 << 2 | t0 >> 30);
Qd = zext(W3 << 96) | zext(W2 << 64) | zext(W1 << 32) | zext(W0);
Qd = (zext(W3) << 96) | (zext(W2) << 64) | (zext(W1) << 32) | zext(W0);
}

#######
Expand Down
18 changes: 10 additions & 8 deletions Ghidra/Processors/ARM/data/languages/ARMv8.sinc
Original file line number Diff line number Diff line change
Expand Up @@ -119,13 +119,14 @@ dcps_lev:3 is TMode=1 & thv_c0001=0b11 { export 3:1; }
:ldaexd^COND Rd,Rd2,[Rn]
is TMode=0 & ARMcond=1 & COND & c2027=0x1b & Rn & Rd & Rd2 & c0011=0xe9f
{
local addr:4 = Rn;
build COND;
@if ENDIAN == "big"
Rd = *(Rn + 4);
Rd2 = *(Rn);
Rd = *(addr + 4);
Rd2 = *(addr);
@else # ENDIAN == "little"
Rd = *(Rn);
Rd2 = *(Rn + 4);
Rd = *(addr);
Rd2 = *(addr + 4);
@endif # ENDIAN == "little"
}

Expand All @@ -134,13 +135,14 @@ dcps_lev:3 is TMode=1 & thv_c0001=0b11 { export 3:1; }
is TMode=1 & thv_c2031=0b111010001101 & thv_c0407=0b1111
& ItCond & thv_Rt & thv_Rt2 & thv_Rn
{
local addr:4 = thv_Rn;
build ItCond;
@if ENDIAN == "big"
thv_Rt = *(thv_Rn + 4);
thv_Rt2 = *(thv_Rn);
thv_Rt = *(addr + 4);
thv_Rt2 = *(addr);
@else # ENDIAN == "little"
thv_Rt = *(thv_Rn);
thv_Rt2 = *(thv_Rn + 4);
thv_Rt = *(addr);
thv_Rt2 = *(addr + 4);
@endif # ENDIAN == "little"
}

Expand Down
Binary file not shown.

Large diffs are not rendered by default.

14 changes: 7 additions & 7 deletions GhidraDocs/certification.manifest
Original file line number Diff line number Diff line change
Expand Up @@ -9,14 +9,14 @@
##MODULE IP: Public Domain
##MODULE IP: Tango Icons - Public Domain
CheatSheet.html||GHIDRA||||END|
GhidraClass/Advanced/Examples/Makefile||GHIDRA||||END|
GhidraClass/Advanced/Examples/compilerVsDecompiler.s||GHIDRA||||END|
GhidraClass/Advanced/Examples/inline.s||GHIDRA||||END|
GhidraClass/Advanced/Examples/switch.s||GHIDRA||||END|
GhidraClass/Advanced/GHIDRA_1.png||GHIDRA||||END|
GhidraClass/Advanced/ghidraRight.png||GHIDRA||||END|
GhidraClass/Advanced/improvingDisassemblyAndDecompilation.pdf||GHIDRA||||END|
GhidraClass/Advanced/improvingDisassemblyAndDecompilation.tex||GHIDRA||||END|
GhidraClass/Advanced/src/Examples/Makefile||GHIDRA||||END|
GhidraClass/Advanced/src/Examples/compilerVsDecompiler.s||GHIDRA||||END|
GhidraClass/Advanced/src/Examples/inline.s||GHIDRA||||END|
GhidraClass/Advanced/src/Examples/switch.s||GHIDRA||||END|
GhidraClass/Advanced/src/GHIDRA_1.png||GHIDRA||||END|
GhidraClass/Advanced/src/ghidraRight.png||GHIDRA||||END|
GhidraClass/Advanced/src/improvingDisassemblyAndDecompilation.tex||GHIDRA||||END|
GhidraClass/AdvancedDevelopment/GhidraAdvancedDevelopment.html||GHIDRA|||This file contains mostly Ghidra content, but also includes code that is available for distribution, without restrictions, from https://github.com/paulrouget/dzslides.|END|
GhidraClass/AdvancedDevelopment/GhidraAdvancedDevelopment_withNotes.html||Public Domain|||Slight modification of code that is available for distribution, without restrictions, (original extremely permissive wtf license allows us to change IP to Public Domain),from https://github.com/paulrouget/dzslides.|END|
GhidraClass/AdvancedDevelopment/Images/GhidraLogo64.png||GHIDRA||||END|
Expand Down

0 comments on commit b272e74

Please sign in to comment.