On Wed, Feb 25, 2026 at 10:22:47PM -0800, KENNON J CONRAD via Cygwin wrote:
> Hi Brian,
> 
>    I installed the version of the cygwin-debuginfo that is on my test 
> computer to the build machine (version 3.6.6-1).  I put the memmove back in 
> the code in place of the bloated code that has been running the past 4 days 
> without any problem (and the past ~10 years before changing to memset) and 
> got another SIGTRAP in gbd on that memset within 2 hours.  The backtrace 
> looks very similar:

When debugging issues with low-level library calls such as memmove,
I highly suggest testing using reduced compiler optimization settings.

If you can, pull the function in question into a separate .c or .cxx
file, and compile that translation unit with -Os -ggdb.  If you can
reproduce the issue, compile that translation unit with -O0 -ggdb and
try again.

Question: are you replacing old code with memmove() from address x+y to
address x, i.e. shifting left?  Or are replacing existing code with
memmove() and shifting right onto overlapping ranges?  In both cases for
memmove(), the resulting assembly code should detect if the ranges
overlap and should not overwrite existing data before it gets moved.

Cheers, Glenn

-- 
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple

Reply via email to