[Vm-dev] [commit][3275] Simple treatment of ARMul_OSHandleSWI wrapping.

commits at squeakvm.org commits at squeakvm.org
Tue Mar 17 03:24:27 UTC 2015


Revision: 3275
Author:   eliot
Date:     2015-03-16 20:24:24 -0700 (Mon, 16 Mar 2015)
Log Message:
-----------
Simple treatment of ARMul_OSHandleSWI wrapping.

Modified Paths:
--------------
    trunk/platforms/Cross/plugins/GdbARMPlugin/sqGdbARMPlugin.c

Property Changed:
----------------
    trunk/platforms/Cross/plugins/sqPluginsSCCSVersion.h

Modified: trunk/platforms/Cross/plugins/GdbARMPlugin/sqGdbARMPlugin.c
===================================================================
--- trunk/platforms/Cross/plugins/GdbARMPlugin/sqGdbARMPlugin.c	2015-03-17 02:40:28 UTC (rev 3274)
+++ trunk/platforms/Cross/plugins/GdbARMPlugin/sqGdbARMPlugin.c	2015-03-17 03:24:24 UTC (rev 3275)
@@ -195,11 +195,23 @@
 	return gdb_log;
 }
 
+#if __linux__
+# define HaveLinkTimeWrapping 1
+#else
+# define HaveLinkTimeWrapping 0
+#endif
+
 // adding custom Software Interrupts to the ARMulator
+
+#if HaveLinkTimeWrapping
 unsigned __real_ARMul_OSHandleSWI(ARMul_State*, ARMword);
   
 unsigned
 __wrap_ARMul_OSHandleSWI (ARMul_State * state, ARMword number)
+#else
+unsigned
+ARMul_OSHandleSWI (ARMul_State * state, ARMword number)
+#endif
 {
 	switch(number)
 	  {
@@ -213,5 +225,9 @@
 			gdb_log_printf(NULL, "Illegal Instruction fetch address (%#p).", state->Reg[15]-8);
 			return TRUE;
 	  }
+#if HaveLinkTimeWrapping
 	return __real_ARMul_OSHandleSWI(state, number);
+#else
+	return core_ARMul_OSHandleSWI(state, number);
+#endif
 }


Property changes on: trunk/platforms/Cross/plugins/sqPluginsSCCSVersion.h
___________________________________________________________________
Modified: checkindate
   - Mon Mar 16 19:40:48 PDT 2015
   + Mon Mar 16 20:24:07 PDT 2015



More information about the Vm-dev mailing list