Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(117)

Issue 1354673002: Fix call instructions to check parameter types for consistency. (Closed)

Created:
5 years, 3 months ago by Karl
Modified:
5 years, 2 months ago
Reviewers:
Jim Stichnoth, John
CC:
native-client-reviews_googlegroups.com
Base URL:
https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Target Ref:
refs/heads/master
Visibility:
Public.

Description

Fix call instructions to check parameter types for consistency. Checks each parameter of a call against the corresponding function signature. It also checks that parameters are valid PNaCl parameter types, unless the call is to an intrinsic. BUG= https://code.google.com/p/nativeclient/issues/detail?id=4309 R=stichnot@chromium.org Committed: https://gerrit.chromium.org/gerrit/gitweb?p=native_client/pnacl-subzero.git;a=commit;h=ff94f59aec64a95c7c1e42d09e2cb7a4cbe63b9a

Patch Set 1 #

Patch Set 2 : Fix minimal build to work. #

Total comments: 8

Patch Set 3 : Fix issues in patch set 2. #

Patch Set 4 : Add test for bad return type. #

Total comments: 2

Patch Set 5 : Fix nit. #

Patch Set 6 : remove typo #

Unified diffs Side-by-side diffs Delta from patch set Stats (+194 lines, -72 lines) Patch
M src/IceTypes.h View 1 2 1 chunk +8 lines, -0 lines 0 comments Download
M src/IceTypes.cpp View 5 chunks +20 lines, -6 lines 0 comments Download
M src/IceTypes.def View 1 2 2 chunks +46 lines, -44 lines 0 comments Download
M src/PNaClTranslator.cpp View 1 2 5 chunks +72 lines, -15 lines 0 comments Download
A tests_lit/parse_errs/call-fcn-bad-param-type.ll View 1 2 1 chunk +15 lines, -0 lines 0 comments Download
A tests_lit/parse_errs/call-fcn-bad-return-type.ll View 1 2 3 4 5 1 chunk +16 lines, -0 lines 0 comments Download
A tests_lit/parse_errs/call-indirect-i8.ll View 1 2 1 chunk +13 lines, -0 lines 0 comments Download
M tests_lit/reader_tests/call-indirect.ll View 1 2 chunks +4 lines, -7 lines 0 comments Download

Messages

Total messages: 7 (1 generated)
Karl
5 years, 3 months ago (2015-09-17 17:18:08 UTC) #2
Jim Stichnoth
https://codereview.chromium.org/1354673002/diff/20001/src/IceTypes.def File src/IceTypes.def (right): https://codereview.chromium.org/1354673002/diff/20001/src/IceTypes.def#newcode77 src/IceTypes.def:77: //#define X(tag, IsVec, IsInt, IsFloat, IsIntArith, IsLoadStore, IsParam, \ ...
5 years, 3 months ago (2015-09-17 19:56:46 UTC) #3
Karl
https://codereview.chromium.org/1354673002/diff/20001/src/IceTypes.def File src/IceTypes.def (right): https://codereview.chromium.org/1354673002/diff/20001/src/IceTypes.def#newcode77 src/IceTypes.def:77: //#define X(tag, IsVec, IsInt, IsFloat, IsIntArith, IsLoadStore, IsParam, \ ...
5 years, 3 months ago (2015-09-18 17:22:49 UTC) #4
Jim Stichnoth
lgtm https://codereview.chromium.org/1354673002/diff/60001/tests_lit/parse_errs/call-fcn-bad-return-type.ll File tests_lit/parse_errs/call-fcn-bad-return-type.ll (right): https://codereview.chromium.org/1354673002/diff/60001/tests_lit/parse_errs/call-fcn-bad-return-type.ll#newcode2 tests_lit/parse_errs/call-fcn-bad-return-type.ll:2: ; a legal call parameter type (unless declaration ...
5 years, 3 months ago (2015-09-18 17:27:49 UTC) #5
Karl
Committed patchset #6 (id:100001) manually as ff94f59aec64a95c7c1e42d09e2cb7a4cbe63b9a (presubmit successful).
5 years, 3 months ago (2015-09-18 17:37:50 UTC) #6
Karl
5 years, 3 months ago (2015-09-18 17:37:57 UTC) #7
Message was sent while issue was closed.
https://codereview.chromium.org/1354673002/diff/60001/tests_lit/parse_errs/ca...
File tests_lit/parse_errs/call-fcn-bad-return-type.ll (right):

https://codereview.chromium.org/1354673002/diff/60001/tests_lit/parse_errs/ca...
tests_lit/parse_errs/call-fcn-bad-return-type.ll:2: ; a legal call parameter
type (unless declaration is intrinsic).
On 2015/09/18 17:27:49, stichnot wrote:
> s/parameter/return/ (I think, because "parameter type" excludes void)

Done.

Powered by Google App Engine
This is Rietveld 408576698