From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 27909 invoked by alias); 15 Apr 2008 15:21:59 -0000 Received: (qmail 27888 invoked by uid 22791); 15 Apr 2008 15:21:56 -0000 X-Spam-Status: No, hits=-1.8 required=5.0 tests=AWL,BAYES_00,J_CHICKENPOX_43,J_CHICKENPOX_44 X-Spam-Check-By: sourceware.org Received: from wildebeest.demon.nl (HELO gnu.wildebeest.org) (83.160.170.119) by sourceware.org (qpsmtpd/0.31) with ESMTP; Tue, 15 Apr 2008 15:21:37 +0000 Received: from cc1341701-a.deven1.ov.home.nl ([82.72.26.122] helo=[192.168.1.104]) by gnu.wildebeest.org with esmtp (Exim 4.63) (envelope-from ) id 1JlmyS-0000KA-3e; Tue, 15 Apr 2008 17:21:34 +0200 Subject: Re: [SCM] master: swagiaal: created and used InlinedSubroutine. From: Mark Wielaard To: frysk@sourceware.org Cc: swagiaal@sourceware.org In-Reply-To: <20080414174653.13175.qmail@sourceware.org> References: <20080414174653.13175.qmail@sourceware.org> Content-Type: text/plain Date: Tue, 15 Apr 2008 18:05:00 -0000 Message-Id: <1208272888.28544.4.camel@dijkstra.wildebeest.org> Mime-Version: 1.0 X-Mailer: Evolution 2.12.3 (2.12.3-3.fc8) Content-Transfer-Encoding: 7bit X-Spam-Score: -0.8 (/) X-IsSubscribed: yes Mailing-List: contact frysk-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: frysk-owner@sourceware.org X-SW-Source: 2008-q2/txt/msg00055.txt.bz2 Hi Sami, On Mon, 2008-04-14 at 17:46 +0000, swagiaal@sourceware.org wrote: > commit 701ccd302e772219f2031219afa5fdcf69f27618 > Author: Sami Wagiaalla > Date: Mon Apr 14 13:06:22 2008 -0400 > > swagiaal: created and used InlinedSubroutine. > > frysk-core/frysk/scopes/ChangeLog > +2008-04-14 Sami Wagiaalla > + > + * 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 <> 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 < 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: <>; buffer <> 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 <> 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 < 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