diff options
author | Ficture Seven <FICTURE7@gmail.com> | 2020-05-04 06:06:22 +0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-05-04 12:06:22 +1000 |
commit | 180ad8605d09ff0ca754a8e5efcce78844701444 (patch) | |
tree | 4dc45336f2bbb45315ae1ceb0100686103d4b310 /ARMeilleure/Translation/EmitterContext.cs | |
parent | 53369e79bdc34440a48e932e7024bab92f30f957 (diff) |
Improve IRDumper (#1135)
* Improve IRDumper
* Make Symbols.Add(ulong, ulong, ulong, string) thread safe
* Use a StringBuilder for MemoryOperand
* Add #if M_DEBUG guards
* Fix JMP_TABLE typo
* Fix using in Symbols
* Use Conditional("M_DEBUG") instead
Address gdkchan's feedback
* Use a struct instead of 4-tuple
Address gdkchan's feedback
* Place symbols in comments instead
Address gdkchan's feedback
* Use StringBuilder throughout
* Handle offsetted symbols
* Fix naming convention of Builder
* Avoid ArgumentException
* Remove unnecessary using
* Use switch expression instead
* Turn into a class
* Clean up
* Remove unnecessary using
Diffstat (limited to 'ARMeilleure/Translation/EmitterContext.cs')
-rw-r--r-- | ARMeilleure/Translation/EmitterContext.cs | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/ARMeilleure/Translation/EmitterContext.cs b/ARMeilleure/Translation/EmitterContext.cs index d9e0a4ed..7abda1a7 100644 --- a/ARMeilleure/Translation/EmitterContext.cs +++ b/ARMeilleure/Translation/EmitterContext.cs @@ -1,3 +1,4 @@ +using ARMeilleure.Diagnostics; using ARMeilleure.IntermediateRepresentation; using ARMeilleure.State; using System; @@ -85,6 +86,8 @@ namespace ARMeilleure.Translation IntPtr ptr = Marshal.GetFunctionPointerForDelegate<Delegate>(func); + Symbols.Add((ulong)ptr.ToInt64(), func.Method.Name); + OperandType returnType = GetOperandType(func.Method.ReturnType); return Call(Const(ptr.ToInt64()), returnType, callArgs); |