]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Handle 8-byte value-check failures using a special fast-case fn (like
authorJulian Seward <jseward@acm.org>
Sat, 23 Apr 2005 22:38:38 +0000 (22:38 +0000)
committerJulian Seward <jseward@acm.org>
Sat, 23 Apr 2005 22:38:38 +0000 (22:38 +0000)
0,1,4 sized) rather than the generic one.  Remove size 2 since that
never seems to get used.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3545

memcheck/mc_include.h
memcheck/mc_main.c
memcheck/mc_translate.c

index 877319d4b1c543b32452f1ff061fcf2681d2a7bd..0ea9aee8165c14fdd305933c8f16aef4ac6ba3bc 100644 (file)
@@ -55,8 +55,8 @@ extern Bool MC_(clo_avoid_strlen_errors);
 
 /* Functions defined in mc_main.c */
 extern VGA_REGPARM(1) void MC_(helperc_complain_undef) ( HWord );
+extern void MC_(helperc_value_check8_fail) ( void );
 extern void MC_(helperc_value_check4_fail) ( void );
-extern void MC_(helperc_value_check2_fail) ( void );
 extern void MC_(helperc_value_check1_fail) ( void );
 extern void MC_(helperc_value_check0_fail) ( void );
 
index 8f88791a6ef1a37975fb6c9f4a2098b919841582..bba316d5375facb48b77e627e3f0eb1f76426ed6 100644 (file)
@@ -1493,16 +1493,16 @@ void MC_(helperc_value_check1_fail) ( void )
    MC_(record_value_error) ( VG_(get_running_tid)(), 1 );
 }
 
-//zz void MC_(helperc_value_check2_fail) ( void )
-//zz {
-//zz    MC_(record_value_error) ( VG_(get_running_tid)(), 2 );
-//zz }
-
 void MC_(helperc_value_check4_fail) ( void )
 {
    MC_(record_value_error) ( VG_(get_running_tid)(), 4 );
 }
 
+void MC_(helperc_value_check8_fail) ( void )
+{
+   MC_(record_value_error) ( VG_(get_running_tid)(), 8 );
+}
+
 VGA_REGPARM(1) void MC_(helperc_complain_undef) ( HWord sz )
 {
    MC_(record_value_error) ( VG_(get_running_tid)(), (Int)sz );
index dd11f6ed942d43281d2e82976e9a6ebf08a00c25..ecce5f3c8b12d28130faf93946c8e1682ab4ab94 100644 (file)
@@ -702,6 +702,13 @@ static void complainIfUndefined ( MCEnv* mce, IRAtom* atom )
                                  mkIRExprVec_0() 
                                );
          break;
+      case 8:
+         di = unsafeIRDirty_0_N( 0/*regparms*/, 
+                                 "MC_(helperc_value_check8_fail)",
+                                 &MC_(helperc_value_check8_fail),
+                                 mkIRExprVec_0() 
+                               );
+         break;
       default:
          di = unsafeIRDirty_0_N( 1/*regparms*/, 
                                  "MC_(helperc_complain_undef)",