emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: RMAIL slows


From: Robert J. Chassell
Subject: Re: RMAIL slows
Date: Tue, 22 Mar 2005 15:42:34 +0000 (UTC)

            re_match_2_internal

    ... is the inner function that does regexp matching.  Could you
    please show a backtrace of the inner 5 or 10 C stack frames that call
    it?  Then we will see which C primitive was called.

    Also, by looking at the args to that C primitive, you can see
    what the regexp is.

Is this what you mean?

(gdb) bt
#0  re_match_2_internal (bufp=0x8329a5c, 
    string1=0x42078bab "Subject: wicked drug)s to keep you going\nFrom: 
\"Terrance Hampton\" <address@hidden>\nDate: Tue, 22 Mar 2005 11:29:57 
+0000\nTo: address@hidden time to stop wasting money o"..., 
    size1=0, 
    string2=0x42078bab "Subject: wicked drug)s to keep you going\nFrom: 
\"Terrance Hampton\" <address@hidden>\nDate: Tue, 22 Mar 2005 11:29:57 
+0000\nTo: address@hidden time to stop wasting money o"..., 
    size2=797, pos=6, regs=0x8320ea8, stop=0) at regex.c:4835
#1  0x08163f82 in re_search_2 (bufp=0x8329a5c, 
    str1=0x42078bab "Subject: wicked drug)s to keep you going\nFrom: \"Terrance 
Hampton\" <address@hidden>\nDate: Tue, 22 Mar 2005 11:29:57 +0000\nTo: 
address@hidden time to stop wasting money o"..., 
    size1=0, 
    str2=0x42078bab "Subject: wicked drug)s to keep you going\nFrom: \"Terrance 
Hampton\" <address@hidden>\nDate: Tue, 22 Mar 2005 11:29:57 +0000\nTo: 
address@hidden time to stop wasting money o"..., 
    size2=797, startpos=6, range=791, regs=0x8320ea8, stop=797) at regex.c:4328
#2  0x0815a265 in search_buffer (string=151866368, pos=6316886, pos_byte=0, 
    lim=6317683, lim_byte=6318289, n=1, RE=1, trt=143145540, 
    inverse_trt=143150548, posix=1107790763) at search.c:1138
#3  0x08159a69 in search_command (string=144968947, bound=137576249, 
    noerror=137576297, count=1107790763, direction=1, RE=1, posix=0)
    at search.c:939
#4  0x0815c07e in Fre_search_forward (regexp=1107790763, bound=1107790763, 
    noerror=1107790763, count=1107790763) at search.c:2160


I am not sure what to do next.  I tried this:

(gdb) c
Continuing.

Breakpoint 6, Fre_search_forward (regexp=137779403, bound=137779403, 
    noerror=137779403, count=137779403) at search.c:2160
2160      return search_command (regexp, bound, noerror, count, 1, 1, 0);
(gdb) bt
#0  Fre_search_forward (regexp=137779403, bound=137779403, noerror=137779403, 
    count=137779403) at search.c:2160

And

(gdb) f 0
#0  Fre_search_forward (regexp=137779403, bound=137779403, noerror=137779403, 
    count=137779403) at search.c:2160
2160      return search_command (regexp, bound, noerror, count, 1, 1, 0);
(gdb) list
2155    See also the functions `match-beginning', `match-end', `match-string',
2156    and `replace-match'.  */)
2157         (regexp, bound, noerror, count)
2158         Lisp_Object regexp, bound, noerror, count;
2159    {
2160      return search_command (regexp, bound, noerror, count, 1, 1, 0);
2161    }
2162    
2163    DEFUN ("posix-search-backward", Fposix_search_backward, 
Sposix_search_backward, 1, 4,
2164           "sPosix search backward: ",
(gdb) info f
Stack level 0, frame at 0xbfffddd0:
 eip = 0x815c041 in Fre_search_forward (search.c:2160); saved eip 0x8182499
 called by frame at 0xbfffde40
 source language c.
 Arglist at 0xbfffddc8, args: regexp=137779403, bound=137779403, 
    noerror=137779403, count=137779403
 Locals at 0xbfffddc8, Previous frame's sp is 0xbfffddd0
 Saved registers:
  ebp at 0xbfffddc8, eip at 0xbfffddcc
(gdb) info args
regexp = 137779403
bound = 137779403
noerror = 137779403
count = 137779403

I also tried printing the value of `regexp=137779403' and got

(gdb) p
$3 = 137779403

I do not know what to try next.  What should I do?

-- 
    Robert J. Chassell                         
    address@hidden                         GnuPG Key ID: 004B4AC8
    http://www.rattlesnake.com                  http://www.teak.cc




reply via email to

[Prev in Thread] Current Thread [Next in Thread]