Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 192598 Details for
Bug 341499
[compiler][null] allocate extra bits in all methods of UnconditionalFlowInfo
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
[patch]
proposed patch
Bug_341499.patch (text/plain), 3.37 KB, created by
Stephan Herrmann
on 2011-04-05 16:31:11 EDT
(
hide
)
Description:
proposed patch
Filename:
MIME Type:
Creator:
Stephan Herrmann
Created:
2011-04-05 16:31:11 EDT
Size:
3.37 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.jdt.core >Index: compiler/org/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo.java,v >retrieving revision 1.73 >diff -u -r1.73 UnconditionalFlowInfo.java >--- compiler/org/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo.java 4 Mar 2011 12:41:21 -0000 1.73 >+++ compiler/org/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo.java 5 Apr 2011 20:13:03 -0000 >@@ -1258,8 +1258,25 @@ > } > else { > // use extra vector >- int vectorIndex ; >- this.extra[2][vectorIndex = (position / BitCacheSize) - 1] >+ int vectorIndex = (position / BitCacheSize) - 1; >+ if (this.extra == null) { >+ int length = vectorIndex + 1; >+ this.extra = new long[extraLength][]; >+ for (int j = 0; j < extraLength; j++) { >+ this.extra[j] = new long[length]; >+ } >+ } >+ else { >+ int oldLength; // might need to grow the arrays >+ if (vectorIndex >= (oldLength = this.extra[0].length)) { >+ for (int j = 0; j < extraLength; j++) { >+ System.arraycopy(this.extra[j], 0, >+ (this.extra[j] = new long[vectorIndex + 1]), 0, >+ oldLength); >+ } >+ } >+ } >+ this.extra[2][vectorIndex] > |= (mask = 1L << (position % BitCacheSize)); > this.extra[4][vectorIndex] |= mask; > this.extra[3][vectorIndex] &= (mask = ~mask); >@@ -1295,8 +1312,25 @@ > } > else { > // use extra vector >- int vectorIndex ; >- this.extra[2][vectorIndex = (position / BitCacheSize) - 1] >+ int vectorIndex = (position / BitCacheSize) - 1; >+ if (this.extra == null) { >+ int length = vectorIndex + 1; >+ this.extra = new long[extraLength][]; >+ for (int j = 0; j < extraLength; j++) { >+ this.extra[j] = new long[length]; >+ } >+ } >+ else { >+ int oldLength; // might need to grow the arrays >+ if (vectorIndex >= (oldLength = this.extra[0].length)) { >+ for (int j = 0; j < extraLength; j++) { >+ System.arraycopy(this.extra[j], 0, >+ (this.extra[j] = new long[vectorIndex + 1]), 0, >+ oldLength); >+ } >+ } >+ } >+ this.extra[2][vectorIndex] > |= (mask = 1L << (position % BitCacheSize)); > this.extra[3][vectorIndex] |= mask; > this.extra[4][vectorIndex] &= (mask = ~mask); >@@ -1339,8 +1373,25 @@ > } > else { > // use extra vector >- int vectorIndex ; >- this.extra[2][vectorIndex = (position / BitCacheSize) - 1] >+ int vectorIndex = (position / BitCacheSize) - 1; >+ if (this.extra == null) { >+ int length = vectorIndex + 1; >+ this.extra = new long[extraLength][]; >+ for (int j = 0; j < extraLength; j++) { >+ this.extra[j] = new long[length]; >+ } >+ } >+ else { >+ int oldLength; // might need to grow the arrays >+ if (vectorIndex >= (oldLength = this.extra[0].length)) { >+ for (int j = 0; j < extraLength; j++) { >+ System.arraycopy(this.extra[j], 0, >+ (this.extra[j] = new long[vectorIndex + 1]), 0, >+ oldLength); >+ } >+ } >+ } >+ this.extra[2][vectorIndex] > |= (mask = 1L << (position % BitCacheSize)); > this.extra[5][vectorIndex] |= mask; > this.extra[3][vectorIndex] &= (mask = ~mask);
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 341499
: 192598