Previous mail
Next mail
Unformatted/full headers
Overview 10 days
Subject
Date
Thread
Author
From: Waldek Hebisch
Subject: New (gpc-20060325)
Date: 3 Apr 2006, 01:40:34
Adriaan van Os wrote: > Waldek Hebisch wrote: > > > Adriaan van Os wrote: > >> > >> The asmnames.pas failure is new. It doesn't fail with the > >> gpc-20060215. > >> Neither does it fail with gpc-20060325 at -O1. At -O3 or -O2 the > >> output > >> of the generated progam is empty. I can provide more info as needed. > >> > > > > Will take deeper look at asmnames.pas failure on Monday. ATM I would > > like to know if asmnames.pas fails also in non-pic mode? > > Yes, that's what I already tried, it fails with -mdynamic-no-pic. > I still do not know what is wrong with asmnames.pas. I have tried to reproduce problem in ppc-linux, but in Linux asmnames.pas generated correct output. I am affraid it is time to do assembly level debugging. Could you set breakpoint in `puts' and look at its argument. The argument should be address of S plus 8, and it should point to the string "OK". The first question is if `puts' gets correct address (alternativly, the content of S my be incorrect). If the content of S is incorrect then one may step trough the program to verify why. AFAICS generated assembly contains `memcpy' call and after that call data part of S should contain the string "OK". Next the length field (at address S plus 4) should be set to 2. Then there is a code to null terminate S (but only in conditionally, if it is not already null terminated). Then `puts' is called. At first glance the assembly contains all needed instructions, but computers are much better then people at executing programs, so one should just single-step the program verifing values stored in S at each step. BTW. One gets simplest assembly using `-static -fno-range-checking'.
Previous mail
Next mail
Unformatted/full headers
Overview 10 days
Subject
Date
Thread
Author
| Author | Subject | Date |
|---|---|---|
| Adriaan van Os | New (gpc-20060325) | 25 Mar 2006, 17:52:31 |
Note: This page contains information that does not originate from the owner of this web site, but from the authors of the mails archived. The owner of this web site is not responsible for the content of such information. Any use of that infomation requires the consent of the respective author.
Where WWW addresses (URLs) in the mails archived are marked as hyperlinks, this is only for the comfort of the reader. The content of the web pages linked to like this does not necessarily reflect the opinion of the owner of this web site or of the authors of the mails archived. The owner of this web site is not responsible for the content of such web pages. Those pages are explicitly not to be considered as part of the content of this page, but merely as references.
This page was created by Crystal 0.999 (Linux 2.4.27/i686).