[prev in list] [next in list] [prev in thread] [next in thread]
List: openjdk-lambda-dev
Subject: defender methods analysis, classloading and java.lang.StackOverflowError
From: keith.mcguigan () oracle ! com (Keith McGuigan)
Date: 2012-03-14 16:32:39
Message-ID: 4F60C827.2010103 () oracle ! com
[Download RAW message or body]
On 3/14/2012 12:12 PM, Sergey Kuksenko wrote:
>> ... because then we'll use less room in parseClassFile()'s stack.
> We may try this.
> But I suspect not only impact of GenericAnalyzer size. The problem may
> be caused by aggressive inline and corresponding stack frame expansion.
Yeah, that's a good point. I'll fire it up in a debugger sometime and
see if I can tell what's going on.
> ParseClassFile() is too big - ~900 lines.
> IMHO the method should be split.
>> But I
>> don't think that's going to explain the ~8K/frame difference you're
>> seeing. That's probably coming from within the GenericAnalyzer itself
>> (which does use recursion too).
> No. The branch "if (has_default_methods&& !access_flags.is_interface())
> {" is never executed for that test.
Ok well that's good. We'll probably have to revisit some of those
algorithms though, to remove the recursion there too.
--
- Keith
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic