Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Eip 214: new STATICCALL opcode #922

Merged
merged 7 commits into from
Aug 24, 2017
Merged

Eip 214: new STATICCALL opcode #922

merged 7 commits into from
Aug 24, 2017

Conversation

Nashatyrev
Copy link
Member

Implementation of ethereum/EIPs#214

@coveralls
Copy link

Coverage Status

Coverage increased (+0.2%) to 57.854% when pulling 1d5f20c on eip-214 into 1048d01 on develop.

@@ -137,4 +137,9 @@ String validateTransactionChanges(BlockStore blockStore, Block curBlock, Transac
* EIP211: https://github.com/ethereum/EIPs/pull/211
*/
boolean eip211();

/**
* EIP211: https://github.com/ethereum/EIPs/pull/214
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

pls, fix typo in EIP number

Call,

/**
* Indicates that the opcode has value parameter (3rd on stack)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like description does not relate to flag semantics, doesn't it?

@@ -974,6 +980,7 @@ else if (oldValue != null && newValue.isZero()) {
case LOG3:
case LOG4: {

if (program.isStaticCall()) throw new Program.StaticCallModificationException();
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LOG0 is not affected by the spec, thus, it should be excepted

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@@ -687,7 +707,32 @@ public int asInt() {
}
}

;
public enum CallFlags {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe defined a method for each flag check in OpCode? Just to replace op.getCallFlags().contains(CallFlags.Stateless) with something like op.isStateless() and increase code readability

@@ -1288,6 +1302,10 @@ else if (oldValue != null && newValue.isZero()) {
}
}

private void checkStatic(Program program) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missed that one. This method is not used. do we need to keep it?

@coveralls
Copy link

Coverage Status

Coverage increased (+0.06%) to 57.751% when pulling dc45947 on eip-214 into 1048d01 on develop.

@mkalinin mkalinin merged commit a8b94f7 into develop Aug 24, 2017
@mkalinin mkalinin mentioned this pull request Aug 25, 2017
13 tasks
@mkalinin
Copy link
Contributor

Relates to #923

@Nashatyrev Nashatyrev changed the title Eip 214 Eip 214: new STATICCALL opcode Aug 30, 2017
@mkalinin mkalinin deleted the eip-214 branch December 26, 2018 06:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants