Hi,
I been working on a set of tools for a lpc2387 board I developed,
I built openocd(trunk), gcc(4.3.2) and insight(6.8) under Cygwin, those
work very well, I have scrips to download code and to debug the target.
Those work great as well, but I have a problem.
If a build the code with:
LINKER_FLAGS=-nostartfiles -Xlinker -o$(BUILDDIR)/lpc2387.elf -Xlinker
-M -Wl,-Map=$(BUILDDIR)/lpc2387.map,--cref,--gc-sections
and
CFLAGS= $(DEBUG) \
$(OPTIM) \
-T$(LDSCRIPT) \
-mcpu=arm7tdmi \
-I$(INCLUDEPATH)\
-D PACK_STRUCT_END=__attribute\(\(packed\)\) \
-D ALIGN_STRUCT_END=__attribute\(\(aligned\(4\)\)\) \
-fomit-frame-pointer \
-mthumb-interwork \
-ffreestanding \
-ffunction-sections \
-fdata-sections \
The debugger won't allow me to step over to the next line of code, if I
remove the -gc-sections parameter (thus removing dead code elimination)
the debugger will work as expected.
Although the debugger is working, is very annoying to have to step line
per line of code, I can set temporal breakpoints but may be someone had
this problem before?
Alfredo Cabral wrote: Further examination reveals, it was only with the first function. The rest of the debugging session works as expected.
Alfredo Cabral wrote: > Alfredo Cabral wrote: > > Further examination reveals, it was only with the first function. > > The rest of the debugging session works as expected. generally if using -gc-sections breaks your code then you need to check the linker script. Do you have the KEEP sections correctly defined (usually on the reset vector)? Cheers Spen
Spencer Oliver wrote: > Alfredo Cabral wrote: >> Alfredo Cabral wrote: >> >> Further examination reveals, it was only with the first function. >> >> The rest of the debugging session works as expected. > > generally if using -gc-sections breaks your code then you need to check > the linker script. > > Do you have the KEEP sections correctly defined (usually on the reset > vector)? > > Cheers > Spen Spen, The code compiled and linked fine, the thing is, while debugging it was impossible to step over a function, Insight jumped into everytime, however this only happened on a very specific binary, most compiles work ok, and those that exhibit anomalies, only do so on the very first function. It drove me nuts at some point because I thought this wasn't an isolated case, but as I explained above, turns out it was. Cheers Alfredo
Please log in before posting. Registration is free and takes only a minute.
Existing account
Do you have a Google/GoogleMail account? No registration required!
Log in with Google account
Log in with Google account
No account? Register here.