Author: martin
Date: 2007-10-15 18:39:24 -0400 (Mon, 15 Oct 2007)
New Revision: 87544

Modified:
   trunk/debugger/ChangeLog
   trunk/debugger/backend/ILanguageBackend.cs
   trunk/debugger/backend/arch/Bfd.cs
   trunk/debugger/backend/arch/DwarfReader.cs
   trunk/debugger/languages/mono/MonoLanguageBackend.cs
   trunk/debugger/languages/mono/MonoSymbolFile.cs
Log:
2007-10-16  Martin Baulig  <[EMAIL PROTECTED]>

        * backend/ILanguageBackend.cs
        (ILanguageBackend.GetTrampoline): Removed.



Modified: trunk/debugger/ChangeLog
===================================================================
--- trunk/debugger/ChangeLog    2007-10-15 22:38:19 UTC (rev 87543)
+++ trunk/debugger/ChangeLog    2007-10-15 22:39:24 UTC (rev 87544)
@@ -1,5 +1,10 @@
 2007-10-16  Martin Baulig  <[EMAIL PROTECTED]>
 
+       * backend/ILanguageBackend.cs
+       (ILanguageBackend.GetTrampoline): Removed.
+
+2007-10-16  Martin Baulig  <[EMAIL PROTECTED]>
+
        * backend/arch/Architecture.cs
        (Architecture.CallTargetType): Add `NativeTrampoline',
        `NativeTrampolineStart' and `MonoTrampoline'.

Modified: trunk/debugger/backend/ILanguageBackend.cs
===================================================================
--- trunk/debugger/backend/ILanguageBackend.cs  2007-10-15 22:38:19 UTC (rev 
87543)
+++ trunk/debugger/backend/ILanguageBackend.cs  2007-10-15 22:39:24 UTC (rev 
87544)
@@ -36,8 +36,5 @@
                Language Language {
                        get;
                }
-
-               MethodSource GetTrampoline (TargetMemoryAccess memory,
-                                           TargetAddress address);
        }
 }

Modified: trunk/debugger/backend/arch/Bfd.cs
===================================================================
--- trunk/debugger/backend/arch/Bfd.cs  2007-10-15 22:38:19 UTC (rev 87543)
+++ trunk/debugger/backend/arch/Bfd.cs  2007-10-15 22:39:24 UTC (rev 87544)
@@ -950,12 +950,6 @@
                        }
                }
 
-               MethodSource ILanguageBackend.GetTrampoline (TargetMemoryAccess 
memory,
-                                                            TargetAddress 
address)
-               {
-                       return null;
-               }
-
                internal bool GetTrampoline (TargetMemoryAccess memory,
                                             TargetAddress call_site,
                                             TargetAddress call_target,

Modified: trunk/debugger/backend/arch/DwarfReader.cs
===================================================================
--- trunk/debugger/backend/arch/DwarfReader.cs  2007-10-15 22:38:19 UTC (rev 
87543)
+++ trunk/debugger/backend/arch/DwarfReader.cs  2007-10-15 22:39:24 UTC (rev 
87544)
@@ -2627,9 +2627,10 @@
                                return true;
                        }
 
-                       internal override MethodSource GetTrampoline 
(TargetMemoryAccess memory, TargetAddress address)
+                       internal override MethodSource GetTrampoline 
(TargetMemoryAccess memory,
+                                                                     
TargetAddress address)
                        {
-                               return ((ILanguageBackend) 
subprog.dwarf.bfd).GetTrampoline (memory, address);
+                               return null;
                        }
                }
 

Modified: trunk/debugger/languages/mono/MonoLanguageBackend.cs
===================================================================
--- trunk/debugger/languages/mono/MonoLanguageBackend.cs        2007-10-15 
22:38:19 UTC (rev 87543)
+++ trunk/debugger/languages/mono/MonoLanguageBackend.cs        2007-10-15 
22:39:24 UTC (rev 87544)
@@ -922,14 +922,15 @@
                public MethodSource GetTrampoline (TargetMemoryAccess memory,
                                                   TargetAddress address)
                {
-#if FIXME
-                       bool is_start;
-                       TargetAddress trampoline = GetTrampolineAddress 
(memory, address, out is_start);
-                       if (trampoline.IsNull)
+                       int insn_size;
+                       TargetAddress target;
+                       CallTargetType type = memory.Architecture.GetCallTarget 
(
+                               memory, address, out target, out insn_size);
+                       if (type != CallTargetType.MonoTrampoline)
                                return null;
 
-                       int token = memory.ReadInteger (trampoline + 4);
-                       TargetAddress klass = memory.ReadAddress (trampoline + 
8);
+                       int token = memory.ReadInteger (target + 4);
+                       TargetAddress klass = memory.ReadAddress (target + 8);
                        TargetAddress image = memory.ReadAddress (klass);
 
                        foreach (MonoSymbolFile file in 
symfile_by_index.Values) {
@@ -938,7 +939,6 @@
 
                                return file.GetMethodByToken (token);
                        }
-#endif
 
                        return null;
                }

Modified: trunk/debugger/languages/mono/MonoSymbolFile.cs
===================================================================
--- trunk/debugger/languages/mono/MonoSymbolFile.cs     2007-10-15 22:38:19 UTC 
(rev 87543)
+++ trunk/debugger/languages/mono/MonoSymbolFile.cs     2007-10-15 22:39:24 UTC 
(rev 87544)
@@ -1075,7 +1075,7 @@
                        internal override MethodSource GetTrampoline 
(TargetMemoryAccess memory,
                                                                      
TargetAddress address)
                        {
-                               return file.LanguageBackend.GetTrampoline 
(memory, address);
+                               return file.MonoLanguage.GetTrampoline (memory, 
address);
                        }
 
                        public override string[] GetNamespaces ()
@@ -1603,7 +1603,7 @@
                        internal override MethodSource GetTrampoline 
(TargetMemoryAccess memory,
                                                                      
TargetAddress address)
                        {
-                               return File.LanguageBackend.GetTrampoline 
(memory, address);
+                               return File.MonoLanguage.GetTrampoline (memory, 
address);
                        }
                }
 

_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches

Reply via email to