unicorn-engine / unicorn

Unicorn CPU emulator framework (ARM, AArch64, M68K, Mips, Sparc, PowerPC, RiscV, S390x, TriCore, X86)
http://www.unicorn-engine.org
GNU General Public License v2.0
7.66k stars 1.35k forks source link

AVR support #2021

Open glennsec opened 1 month ago

glennsec commented 1 month ago

Hi, this adds support for AVR (#939), while keeping XMEGA bits (with DES instruction) currently separate. This PR is rebased against the current dev branch, while original support was developed and more thoroughly tested against unicorn 2.0.x.

aquynh commented 1 month ago

Thanks for the contribution!

aquynh commented 1 month ago

can you look at the issues of the CI?

bet4it commented 1 month ago

You need to add Rust bindings manually😅

glennsec commented 1 month ago

Thanks for the contribution!

  • please update README to add this new architecture.
  • please add your name to CREDITS.TXT.

done

glennsec commented 1 month ago

can you look at the issues of the CI?

Fixed all of those except arm64 & ppc64 failures. The arm64 bits may be fixed by #1935 ?

wtdcode commented 1 month ago

can you look at the issues of the CI?

Fixed all of those except arm64 & ppc64 failures. The arm64 bits may be fixed by #1935 ?

There are also macos failures.

glennsec commented 1 month ago

can you look at the issues of the CI?

Fixed all of those except arm64 & ppc64 failures. The arm64 bits may be fixed by #1935 ?

There are also macos failures.

Hi, this is related to the tcg/aarch64 backend issue mentioned in #1908 with proposed fix in #1935. I have another patch suggestion that fixes the issue, as you can see in the last CI run at https://github.com/glennsec/unicorn/actions/runs/11298077207 (still, ppc64 needs similar treatment).

glennsec commented 1 month ago

See #2028. Feel free to integrate whichever (vs. #1935) suits you best. Thanks.

glennsec commented 1 month ago

See #2028. Feel free to integrate whichever (vs. #1935) suits you best. Thanks.

@wtdcode : I have updated the branch against #1935 (which applies on top of current dev branch) to include aarch64 & ppc64 fixes. Thanks.

wtdcode commented 1 month ago

See #2028. Feel free to integrate whichever (vs. #1935) suits you best. Thanks.

@wtdcode : I have updated the branch against #1935 (which applies on top of current dev branch) to include aarch64 & ppc64 fixes. Thanks.

I will have a check this week.

in7egral commented 1 week ago

I'm looking forward for this PR, as my idaemu fork will be redesigned soon, and I wish to add AVR as well.

@aquynh @wtdcode what's have to be done for merge?

wtdcode commented 1 week ago

I'm looking forward for this PR, as my idaemu fork will be redesigned soon, and I wish to add AVR as well.

@aquynh @wtdcode what's have to be done for merge?

Thanks for reaching out. Unfortunately I'm getting sick recently. Please allow me a few days before coming back.