R/ARMeilleure
Ficture Seven ee22517d92
Improve branch operations (#1442)
* Add Compare instruction

* Add BranchIf instruction

* Use test when BranchIf & Compare against 0

* Propagate Compare into BranchIfTrue/False use

- Propagate Compare operations into their BranchIfTrue/False use and
  turn these into a BranchIf.

- Clean up Comparison enum.

* Replace BranchIfTrue/False with BranchIf

* Use BranchIf in EmitPtPointerLoad

- Using BranchIf early instead of BranchIfTrue/False improves LCQ and
  reduces the amount of work needed by the Optimizer.

  EmitPtPointerLoader was a/the big producer of BranchIfTrue/False.

- Fix asserts firing when assembling BitwiseAnd because of type
  mismatch in EmitStoreExclusive. This is harmless and should not
  cause any diffs.

* Increment PPTC interval version

* Improve IRDumper for BranchIf & Compare

* Use BranchIf in EmitNativeCall

* Clean up

* Do not emit test when immediately preceded by and
2020-08-05 08:52:33 +10:00
..
CodeGen Improve branch operations (#1442) 2020-08-05 08:52:33 +10:00
Common CodeGen Optimisations (LSRA and Translator) (#978) 2020-03-18 22:44:32 +11:00
Decoders Implements some 32-bit instructions (VBIC, VTST, VSRA) (#1192) 2020-07-19 15:11:58 -03:00
Diagnostics Improve branch operations (#1442) 2020-08-05 08:52:33 +10:00
Instructions Improve branch operations (#1442) 2020-08-05 08:52:33 +10:00
IntermediateRepresentation Improve branch operations (#1442) 2020-08-05 08:52:33 +10:00
Memory Implement inline memory load/store exclusive and ordered (#1413) 2020-07-30 11:29:28 -03:00
State Implement inline memory load/store exclusive and ordered (#1413) 2020-07-30 11:29:28 -03:00
Translation Improve branch operations (#1442) 2020-08-05 08:52:33 +10:00
ARMeilleure.csproj Add Profiled Persistent Translation Cache. (#769) 2020-06-16 20:28:02 +02:00
Optimizations.cs Faster crc32 implementation (#1294) 2020-06-05 20:58:27 +10:00
Statistics.cs Suppress warnings from fields never used or never assigned (CS0169 and CS0649) (#919) 2020-04-21 07:59:59 +10:00