Login
Username:

Password:

Remember me



Lost Password?

Register now!

Sections

Who's Online
110 user(s) are online (67 user(s) are browsing Forums)

Members: 0
Guests: 110

more...

Headlines

Forum Index


Board index » All Posts (elfpipe)




Re: SpotLess tests need it to find out one bug
Just can't stay away
Just can't stay away


@kas1e

Ok. I will add some more serial writeouts, when I get back from the hospital. Hopefully we can figure out, where the crash happens.

Go to top


Re: SpotLess tests need it to find out one bug
Just can't stay away
Just can't stay away


@walkero

Since the stacktraces says dos.library and SmartFileSystem, it could be some disk access problem. I have a hard time guessing the problem, but I know, that the only disk access from spotless in this case would be reading and updating from code text files (test.c in this case). Does this give you a hint?

Go to top


Re: SpotLess debugger
Just can't stay away
Just can't stay away


Here is a version for public testing. There still some known issues, but the success rate seems strong enough for broadened application. Please come back with any information gathered during usage. This could still be a quite powerful tool as soon as we crack the problem cases.

Spotless public alpha 01

Go to top


Re: SpotLess debugger
Just can't stay away
Just can't stay away


@jabirulo

Thanks!

Go to top


Re: SpotLess debugger
Just can't stay away
Just can't stay away


@jabirulo

By the way : Could you perhaps send me also the file 'dip_gui.c' from your project?? Thanks!!

Go to top


Re: SpotLess debugger
Just can't stay away
Just can't stay away


@jabirulo

It's a simple case, one that I didn't take care of in my initial case. Basically, when you define a variable in your case as a struct or a pointer to a struct, then either the compiler knows the size of it at the action point, or the knowledge hereof is postponed. For instance, when you do something like

struct Foo;

Foo *bar 0;

/* ... */

struct Foo {
int hello;
const 
char hi[3];
};

void function()
{
Foo ooh;
bar = &ooh;
}


... then the first reference of Foo is cast in stabs as a *conformant array*. Which basically means, that its size will not be known until later.

Conformant arrays are really not part of c or c++, because they don't have dynamic sizing of arrays, but only the casting of an array as pointer (which will mean, that the size is indeed unknown, but not because of the *type* but rather because its type *is* 'pointer'). The tag in the stabs is 'x', and in c code it signifies something like the above construct, where the definition of a class or struct is postponed until later.

This caused me severe problems trying to understand this, when I first wrote the code. I am thankful for the example, cause now I understand, what is going on. What a relief! The implementation will take a couple of days, but when it's done, I am pretty sure, that we are approaching completeness with the stabs code!

Go to top


Re: SpotLess debugger
Just can't stay away
Just can't stay away


@jabirulo

I am on it. It's going to take a little time. Thanks for the test case!

Go to top


Re: SpotLess debugger
Just can't stay away
Just can't stay away


Latest Spotless : Spotless download

Go to top


Re: SpotLess debugger
Just can't stay away
Just can't stay away


By the way : If you need to add stabs symbols to your cmake project, this will work :

Quote:
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -athread=native -gstabs")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -gstabs")

Go to top


Re: SpotLess debugger
Just can't stay away
Just can't stay away


@jabirulo

Great. That's what I wanted to know. There is something wrong with my is_readable_address() function and possibly also with the stabs interpretation of arrays.

One thing you can do, is to run the following command :

Quote:
> objdump --stabs your_executable.exe >stabs.txt


... and send me the resulting text file. That way I can analyse the symbols and see, what I am missing.

EDIT : The strange characters is most likely caused by the interpreter casting the variables as char or char *. If they are either uninitialized or incorrectly typecasted, then it will appear as 'off' characters. Once I have a writeout of the stabs, I can look to see, how it is defined and change the interpretation accordingly. Without it, I am basically working in the blind, unable to predict how certain types of variables or variable hierachies will look in the stabs section.


Edited by alfkil on 2022/3/2 16:22:59
Go to top


Re: SpotLess debugger
Just can't stay away
Just can't stay away



Go to top


Re: SpotLess debugger
Just can't stay away
Just can't stay away


@jabirulo & walkero

Hi guys!

Thanks for testing. I am hoping, that we will get somewhere.

So 1) interestingly for both of you, there seems to be an issue with printing values from arrays. This should be fixable.

2) The slow loading is due to the nested nature of the stabs hierachy. It is possible to do a very easy optimization, but I would rather wait until everything else is good to order.

Go to top


Re: SpotLess debugger
Just can't stay away
Just can't stay away


This is a test version of the much improved Spotless. Thanks to kasie for testing!

Spotless download

I am hoping, that a few people will give it a go and either confirm its perfection or come up with some good points for further improvement. Cheers!

Go to top


Re: SpotLess debugger
Just can't stay away
Just can't stay away


Does anyone know how to contact Martin "Mason" Mertz? The AISS package has lost (sadly) some icons, that I made use of in the UI of Spotless.


Edited by alfkil on 2022/2/16 21:45:25
Edited by alfkil on 2022/2/17 4:35:47
Go to top


Re: SpotLess debugger
Just can't stay away
Just can't stay away


@kas1e

Quote:
. Do you think it is realistic at all to create "remote debugging" in spotless? I mean spotless-server which we run on amigaos4, and then spotless clients which will be hardware-independent, and can be running on win32 for example with Visual Studio or/and IDA ?


Piece of cake. I can even make the client in Qt, if you fancy. :)

Go to top


Re: SpotLess debugger
Just can't stay away
Just can't stay away


@kas1e

There is a problem getting Spotless to look for source files in the right places. I have a solution and will implement it tonight or tomorrow.

@walkero

Spotless has been confirmed working on X1000, X5000 and SAM440. There should be uniform functioning, since the only system reliant bit is the trace function of the CPU. But of course it would be nice with a list of confirmed targets.

Go to top


Re: GDB
Just can't stay away
Just can't stay away


@walkero

Unfortunately the Final Edition Update 2 public release, which coincided with the release of Spotless, introduced the broken compatibility with the exec debugging module, which let many people to believe, that Spotless is broken. This was purely a case of some unlucky changes to the os, that were later reverted, and those running later (or even latest) beta versions of the kernel should see, that Spotless performs quite well. What this means is, that it should load executables without crashing, and it should display some meaningful info in the different parts of the window.

What is missing is handling the location of sourcefiles (for display in the 'sources' pane) and correct handling of external modules (shared objects and libraries) and probably adjustments to the displaying of symbols (variables). Everything else is either the same as db101 or better, because the new code base has better readability and better targeting to problems.

Go to top


Re: GDB
Just can't stay away
Just can't stay away


@kas1e

Maybe you are right - GDB has been developed over many years with a gazillian of contributions. But none of these are amiga-specific. So in any case there needs to be done an amazing amount of work on the amiga side.

Spotless is already mature enough, that it handles the basic cases. I have so far yet to receive a single bug report. Which probably means that no-one is using it or even trying to. The moment the reports and requests start comming in, I can start to work/comment/support.

Go to top


Re: GDB
Just can't stay away
Just can't stay away


@kas1e

How about, instead of a longshot of trying to persuade externals to work for this quite complicated task, we take the easy route and expand and improve the tools we have already?

Spotless is not perfect, but this is only because it has had very little testing and therefore does not take care of most specific use cases with completeness. It could quite easily be brushed over to take care of these, as soon as they are identified.

Also it already comes with an easy to understand ui, and on top of that it is extremely lightweight and AmigaOS specific, which makes it easy to expand to new features.

What do you think?

Go to top


Re: Nemo
Just can't stay away
Just can't stay away


@LiveForIt



Go to top



TopTop
« 1 ... 6 7 8 (9) 10 11 12 ... 74 »




Powered by XOOPS 2.0 © 2001-2023 The XOOPS Project