Support 32bit branch offsets for conditional logic in generated code.
---------------------------------------------------------------------
Key: DERBY-921
URL: http://issues.apache.org/jira/browse/DERBY-921
Project: Derby
Type: Sub-task
Components: Services, SQL
Reporter: Daniel John Debrunner
Assigned to: Daniel John Debrunner
Priority: Minor
Fix For: 10.2.0.0
Conditionals in generated code (MethodBuilder.conditionalIf and conditionalIfNull) generate
code that only supports 16 bit jump offsets for the branch opcode (e.g. IFNONNULL) or the
GOTO opcode. Earlier code now detects the offset being larger than 32767.
The JVM supports a 32bit jump offset instruction, GOTO_W, this can be used to support jump
offsets that are bigger than 16bits (32767) for both the branch opcode
and the GOTO instruction.
This allow increasing the number of IN list values as seen in the query in the largeCodeGen
test.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira
|