From: Sami Wagiaalla <swagiaal@redhat.com>
To: Mark Wielaard <mark@klomp.org>
Cc: frysk@sourceware.org, swagiaal@sourceware.org
Subject: Re: [SCM] master: swagiaal: created and used InlinedSubroutine.
Date: Wed, 16 Apr 2008 08:05:00 -0000 [thread overview]
Message-ID: <4804EE65.8010800@redhat.com> (raw)
In-Reply-To: <1208272888.28544.4.camel@dijkstra.wildebeest.org>
This has been fixed...
the Wrong object was being used.
Thanks for the heads up
Sami
Mark Wielaard wrote:
> Hi Sami,
>
> On Mon, 2008-04-14 at 17:46 +0000, swagiaal@sourceware.org wrote:
>> commit 701ccd302e772219f2031219afa5fdcf69f27618
>> Author: Sami Wagiaalla <swagiaal@redhat.com>
>> Date: Mon Apr 14 13:06:22 2008 -0400
>>
>> swagiaal: created and used InlinedSubroutine.
>>
>> frysk-core/frysk/scopes/ChangeLog
>> +2008-04-14 Sami Wagiaalla <swagiaal@redhat.com>
>> +
>> + * TestScopeFactory.java: test InlinedSubroutine.
>> + * ScopeFactory.java: Now handles InlinedSubroutine objects.
>> + * Subroutine.java: Updated javadoc.
>> + * InlinedSubroutine.java: New class.
>> [...]
>> diff --git a/frysk-core/frysk/scopes/ScopeFactory.java b/frysk-core/frysk/scopes/ScopeFactory.java
>> index af3685f..723d3cd 100644
>> --- a/frysk-core/frysk/scopes/ScopeFactory.java
>> +++ b/frysk-core/frysk/scopes/ScopeFactory.java
>> @@ -78,8 +78,11 @@ public class ScopeFactory {
>>
>> case DwTag.INLINED_SUBROUTINE_:
>> case DwTag.SUBPROGRAM_:
>> - return new Subprogram(die, typeFactory);
>> -
>> + Subprogram subprogram = new Subprogram(die, typeFactory);
>> + if(subprogram.isInlined()){
>> + return new InlinedSubroutine(die,typeFactory);
>> + }
>> + return subprogram;
>
> After this commit I am seeing a lot of test failures (see below). The
> problem seems to be that there is a lot of dynamic type checking in
> DebugInfoFrame.java and DebugInfoStackFactory.java that do things like:
> if (scope instanceof Subprogram && ((Subprogram)scope).isInlined()))
> ...
> Those if statements now fail.
>
> Could you take a look and see what the proper fix is here?
>
> Thanks,
>
> Mark
>
> Failing tests:
>
> There were 6 errors:
> 1) testBackTraceWithInline(frysk.bindir.TestFstack)frysk.expunit.EndOfFileException: end-of-file; expecting: <<\#0 .* third>>; buffer <<Task #25752
> #0 0x0000000000400486 in main() .../funit-stack-inlined.c#47
> #1 0x0000003a1681e074 in __libc_start_main () from .../libc.so.6
> #2 0x00000000004003b9 in _start () from .../funit-stack-inlined
>
> at frysk.expunit.Child.expectMilliseconds(TestRunner)
> at frysk.expunit.Expect.expect(TestRunner)
> at frysk.expunit.Expect.expect(TestRunner)
> at frysk.expunit.Expect.expect(TestRunner)
> at frysk.bindir.TestFstack.testBackTraceWithInline(TestRunner)
> at frysk.junit.Runner.runCases(TestRunner)
> at frysk.junit.Runner.runTestCases(TestRunner)
> at TestRunner.main(TestRunner)
> 2) testBackTraceWithRich(frysk.bindir.TestFstack)frysk.expunit.EndOfFileException: end-of-file; expecting: <<\#0 .* third\(int arg3.*\)>>; buffer <<Task #25764
> #0 0x0000000000400486 in main() .../funit-stack-inlined.c#47
> {
> int some_int = < value unavailable at pc=0x400486> line#61
> }
> #1 0x0000003a1681e074 in __libc_start_main () from .../libc.so.6
> #2 0x00000000004003b9 in _start () from .../funit-stack-inlined
>
> at frysk.expunit.Child.expectMilliseconds(TestRunner)
> at frysk.expunit.Expect.expect(TestRunner)
> at frysk.expunit.Expect.expect(TestRunner)
> at frysk.expunit.Expect.expect(TestRunner)
> at frysk.bindir.TestFstack.testBackTraceWithRich(TestRunner)
> at frysk.junit.Runner.runCases(TestRunner)
> at frysk.junit.Runner.runTestCases(TestRunner)
> at TestRunner.main(TestRunner)
> 3) testHpdBreakpointInline(frysk.hpd.TestBreakpoints)frysk.expunit.TimeoutException: timeout of 5000 milliseconds expired; expecting: <<where.*#0.* add *\(.+\).*\(fhpd\) >>; buffer <<where
> #0 0x00000000004008ec in main(int argc,char ** argv) /home/mark/src/frysk/frysk-core/frysk/pkglibdir/test1.c#31
> #1 0x0000003a1681e074 in __libc_start_main () from /lib64/libc-2.7.so
> #2 0x0000000000400729 in _start () from /home/mark/src/frysk-obj/frysk-core/frysk/pkglibdir/test1
> (fhpd) >>
> at frysk.expunit.Child.expectMilliseconds(TestRunner)
> at frysk.expunit.Expect.expect(TestRunner)
> at frysk.expunit.Expect.expect(TestRunner)
> at frysk.expunit.Expect.expect(TestRunner)
> at frysk.hpd.TestBreakpoints.testHpdBreakpointInline(TestRunner)
> at frysk.junit.Runner.runCases(TestRunner)
> at frysk.junit.Runner.runTestCases(TestRunner)
> at TestRunner.main(TestRunner)
> 4) testWhereVirtual(frysk.hpd.TestStackCommands)frysk.expunit.TimeoutException: timeout of 5000 milliseconds expired; expecting: <<\#0 .*third[^\r\n]*\[inline\]>>; buffer <<where
> #0 0x0000000000400486 in main() /home/mark/src/frysk/frysk-core/frysk/pkglibdir/funit-stack-inlined.c#47
> #1 0x0000003a1681e074 in __libc_start_main () from /lib64/libc.so.6
> #2 0x00000000004003b9 in _start () from /home/mark/src/frysk-obj/frysk-core/frysk/pkglibdir/funit-stack-inlined
> (fhpd) >>
> at frysk.expunit.Child.expectMilliseconds(TestRunner)
> at frysk.expunit.Expect.expect(TestRunner)
> at frysk.expunit.Expect.expect(TestRunner)
> at frysk.expunit.Expect.expect(TestRunner)
> at frysk.hpd.TestStackCommands.checkWhere(TestRunner)
> at frysk.hpd.TestStackCommands.testWhereVirtual(TestRunner)
> at frysk.junit.Runner.runCases(TestRunner)
> at frysk.junit.Runner.runTestCases(TestRunner)
> at TestRunner.main(TestRunner)
> 5) testWhereWithVirtualLocals(frysk.hpd.TestStackCommands)frysk.expunit.TimeoutException: timeout of 5000 milliseconds expired; expecting: <<.*var3>>; buffer <<where -locals
> #0 0x0000000000400486 in main() /home/mark/src/frysk/frysk-core/frysk/pkglibdir/funit-stack-inlined.c#47
> {
> int some_int = < value unavailable at pc=0x400486> line#61
> }
> #1 0x0000003a1681e074 in __libc_start_main () from /lib64/libc.so.6
> #2 0x00000000004003b9 in _start () from /home/mark/src/frysk-obj/frysk-core/frysk/pkglibdir/funit-stack-inlined
> (fhpd) >>
> at frysk.expunit.Child.expectMilliseconds(TestRunner)
> at frysk.expunit.Expect.expect(TestRunner)
> at frysk.expunit.Expect.expect(TestRunner)
> at frysk.expunit.Expect.expect(TestRunner)
> at frysk.hpd.TestStackCommands.checkWhereWithLocals(TestRunner)
> at frysk.hpd.TestStackCommands.testWhereWithVirtualLocals(TestRunner)
> at frysk.junit.Runner.runCases(TestRunner)
> at frysk.junit.Runner.runTestCases(TestRunner)
> at TestRunner.main(TestRunner)
> 6) testGetTasks(frysk.proc.TestProcGet)java.lang.RuntimeException: /proc/$$/task contains bad pid (pid 0)
> at frysk.sys.proc.ProcBuilder.scan(TestRunner)
> at frysk.sys.proc.ProcBuilder.construct(TestRunner)
> at frysk.sys.proc.ProcBuilder.construct(TestRunner)
> at frysk.testbed.TearDownProcess.tearDown(TestRunner)
> at frysk.testbed.TestLib.tearDown(TestRunner)
> at frysk.junit.Runner.runCases(TestRunner)
> at frysk.junit.Runner.runTestCases(TestRunner)
> at TestRunner.main(TestRunner)
> There were 7 failures:
> 1) testFerrorTracesPID(frysk.bindir.TestFerror)junit.framework.AssertionFailedError: run until signal: assertSendAddCloneWaitForAcks(signals {SIGUSR1(10),SIGUSR2(12)}); outstanding: {SIGUSR2(12)}
> at frysk.testbed.SignalWaiter.assertRunUntilSignaled(TestRunner)
> at frysk.testbed.SlaveOffspring.spawn(TestRunner)
> at frysk.testbed.SlaveOffspring.assertSendAddCloneWaitForAcks(TestRunner)
> at frysk.bindir.TestFerror.testFerrorTracesPID(TestRunner)
> at frysk.junit.Runner.runCases(TestRunner)
> at frysk.junit.Runner.runTestCases(TestRunner)
> at TestRunner.main(TestRunner)
> 2) testGetInlinedSubroutines(frysk.debuginfo.TestFrameDebugInfo)junit.framework.AssertionFailedError: Number of inline functions expected:<3> but was:<0>
> at frysk.debuginfo.TestFrameDebugInfo.getInlinedSubroutines(TestRunner)
> at frysk.debuginfo.TestFrameDebugInfo.testGetInlinedSubroutines(TestRunner)
> at frysk.junit.Runner.runCases(TestRunner)
> at frysk.junit.Runner.runTestCases(TestRunner)
> at TestRunner.main(TestRunner)
> 3) testGetInlinedSubroutinesNoDebug(frysk.debuginfo.TestFrameDebugInfo)junit.framework.AssertionFailedError: Number of inline functions expected:<3> but was:<0>
> at frysk.debuginfo.TestFrameDebugInfo.getInlinedSubroutines(TestRunner)
> at frysk.debuginfo.TestFrameDebugInfo.testGetInlinedSubroutinesNoDebug(TestRunner)
> at frysk.junit.Runner.runCases(TestRunner)
> at frysk.junit.Runner.runTestCases(TestRunner)
> at TestRunner.main(TestRunner)
> 4) testGetInlinedSubroutinesNoEH(frysk.debuginfo.TestFrameDebugInfo)junit.framework.AssertionFailedError: Number of inline functions expected:<3> but was:<0>
> at frysk.debuginfo.TestFrameDebugInfo.getInlinedSubroutines(TestRunner)
> at frysk.debuginfo.TestFrameDebugInfo.testGetInlinedSubroutinesNoEH(TestRunner)
> at frysk.junit.Runner.runCases(TestRunner)
> at frysk.junit.Runner.runTestCases(TestRunner)
> at TestRunner.main(TestRunner)
> 5) testVirtualStackTrace(frysk.debuginfo.TestFrameDebugInfo)junit.framework.AssertionFailedError: contains first
> at frysk.debuginfo.TestFrameDebugInfo.virtualStackTrace(TestRunner)
> at frysk.debuginfo.TestFrameDebugInfo.testVirtualStackTrace(TestRunner)
> at frysk.junit.Runner.runCases(TestRunner)
> at frysk.junit.Runner.runTestCases(TestRunner)
> at TestRunner.main(TestRunner)
> 6) testVirtualStackTraceNoDebug(frysk.debuginfo.TestFrameDebugInfo)junit.framework.AssertionFailedError: contains first
> at frysk.debuginfo.TestFrameDebugInfo.virtualStackTrace(TestRunner)
> at frysk.debuginfo.TestFrameDebugInfo.testVirtualStackTraceNoDebug(TestRunner)
> at frysk.junit.Runner.runCases(TestRunner)
> at frysk.junit.Runner.runTestCases(TestRunner)
> at TestRunner.main(TestRunner)
> 7) testVirtualStackTraceNoEH(frysk.debuginfo.TestFrameDebugInfo)junit.framework.AssertionFailedError: contains first
> at frysk.debuginfo.TestFrameDebugInfo.virtualStackTrace(TestRunner)
> at frysk.debuginfo.TestFrameDebugInfo.testVirtualStackTraceNoEH(TestRunner)
> at frysk.junit.Runner.runCases(TestRunner)
> at frysk.junit.Runner.runTestCases(TestRunner)
> at TestRunner.main(TestRunner)
>
> FAILURES!!!
> Tests run: 1032, Failures: 7, Errors: 6
>
>
>
prev parent reply other threads:[~2008-04-15 18:05 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20080414174653.13175.qmail@sourceware.org>
2008-04-15 18:05 ` Mark Wielaard
2008-04-16 8:05 ` Sami Wagiaalla [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4804EE65.8010800@redhat.com \
--to=swagiaal@redhat.com \
--cc=frysk@sourceware.org \
--cc=mark@klomp.org \
--cc=swagiaal@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).