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

Issue 9386010: Initial drop of the DFA-based Ragel-based validator. (Closed)

Created:
8 years, 10 months ago by pasko-google - do not use
Modified:
8 years, 10 months ago
Reviewers:
khim, Mark Seaborn
CC:
native-client-reviews_googlegroups.com
Visibility:
Public.

Description

Initial drop of the DFA-based Ragel-based validator. The previous history is at: https://github.com/khimru/ncval_ragel This addition matches commit: abf4e6c7ffe2ec3b59acb589795a3c574a69f6da The code style must be cleaned up later. The integration with build systems (scons, gyp) must be done later. BUG=none TEST=see inside Committed: https://src.chromium.org/viewvc/native_client?view=rev&revision=7787

Patch Set 1 #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+9112 lines, --1 lines) Patch
A src/trusted/validator_ragel/Makefile View 1 chunk +239 lines, -0 lines 0 comments Download
A src/trusted/validator_ragel/decoder.h View 1 chunk +121 lines, -0 lines 0 comments Download
A src/trusted/validator_ragel/decoder-test.c View 1 chunk +1470 lines, -0 lines 0 comments Download
A src/trusted/validator_ragel/decoder-x86_32.rl View 1 chunk +158 lines, -0 lines 0 comments Download
A src/trusted/validator_ragel/decoder-x86_64.rl View 1 chunk +175 lines, -0 lines 0 comments Download
A src/trusted/validator_ragel/decoder_test_one_file.sh View 1 chunk +37 lines, -0 lines 0 comments Download
A src/trusted/validator_ragel/gen-decoder.C View 1 chunk +2433 lines, -0 lines 1 comment Download
A src/trusted/validator_ragel/gen-decoder-flags.C View 1 chunk +53 lines, -0 lines 0 comments Download
A src/trusted/validator_ragel/general-purpose-instructions.def View 1 chunk +741 lines, -0 lines 0 comments Download
A src/trusted/validator_ragel/mmx-instructions.def View 1 chunk +226 lines, -0 lines 0 comments Download
A src/trusted/validator_ragel/nacl_irt_x86_64.nexe View 0 chunks +-1 lines, --1 lines 0 comments Download
A src/trusted/validator_ragel/nops.def View 1 chunk +6 lines, -0 lines 0 comments Download
A src/trusted/validator_ragel/one-instruction-x86_32.rl View 1 chunk +39 lines, -0 lines 0 comments Download
A src/trusted/validator_ragel/one-instruction-x86_64.rl View 1 chunk +39 lines, -0 lines 0 comments Download
A src/trusted/validator_ragel/parse_dfa.py View 1 chunk +234 lines, -0 lines 0 comments Download
A src/trusted/validator_ragel/run_objdump_test.py View 1 chunk +190 lines, -0 lines 0 comments Download
A src/trusted/validator_ragel/system-instructions.def View 1 chunk +121 lines, -0 lines 0 comments Download
A src/trusted/validator_ragel/test_dfa.h View 1 chunk +36 lines, -0 lines 0 comments Download
A src/trusted/validator_ragel/test_dfa.c View 1 chunk +215 lines, -0 lines 0 comments Download
A src/trusted/validator_ragel/validator.h View 1 chunk +101 lines, -0 lines 0 comments Download
A src/trusted/validator_ragel/validator-test.c View 1 chunk +173 lines, -0 lines 0 comments Download
A src/trusted/validator_ragel/validator-x86_32.rl View 1 chunk +176 lines, -0 lines 0 comments Download
A src/trusted/validator_ragel/validator-x86_64.rl View 1 chunk +490 lines, -0 lines 0 comments Download
A src/trusted/validator_ragel/validator_test.py View 1 chunk +256 lines, -0 lines 0 comments Download
A src/trusted/validator_ragel/x87-instructions.def View 1 chunk +224 lines, -0 lines 0 comments Download
A src/trusted/validator_ragel/xmm-instructions.def View 1 chunk +1160 lines, -0 lines 0 comments Download

Messages

Total messages: 6 (0 generated)
pasko-google - do not use
8 years, 10 months ago (2012-02-13 16:44:42 UTC) #1
khim
LGTM Cleanups will be in follow-up commits...
8 years, 10 months ago (2012-02-13 16:47:41 UTC) #2
Mark Seaborn
Please can you drop the test binary, nacl_irt_x86_64.nexe. It just bloats the SVN repository and ...
8 years, 10 months ago (2012-02-13 17:09:22 UTC) #3
pasko-google - do not use
On 2012/02/13 17:09:22, Mark Seaborn wrote: > Please can you drop the test binary, nacl_irt_x86_64.nexe. ...
8 years, 10 months ago (2012-02-13 17:13:47 UTC) #4
Mark Seaborn
On 13 February 2012 09:13, <pasko@google.com> wrote: > On 2012/02/13 17:09:22, Mark Seaborn wrote: > ...
8 years, 10 months ago (2012-02-13 17:30:13 UTC) #5
khim
8 years, 10 months ago (2012-02-13 18:53:55 UTC) #6
On Mon, Feb 13, 2012 at 9:30 PM, Mark Seaborn <mseaborn@chromium.org> wrote:

> On 13 February 2012 09:13, <pasko@google.com> wrote:
>
>> On 2012/02/13 17:09:22, Mark Seaborn wrote:
>>
>>> Please can you drop the test binary, nacl_irt_x86_64.nexe.  It just
>>> bloats the
>>> SVN repository and is available as part of the normal NaCl build.
>>>
>>
>> going to remove soon, it is needed for tests now
>>
>
> Gah.  You actually committed it, so it has permanently increased the size
> of the Git repo.
>
>
> Call me crazy, but I would have thought the purpose of the first review
> for this code would be to actually review it.
>

It was reviewed. I've compared it with the code in git repo and checked
that it can be pulled and smoke test pass.


> As it is, this was just a rubber-stamp.  You've bypassed the normal
> requirement that code in the SVN repo be reviewed, which does not seem like
> a good start for the most complicated component in the TCB.  Even if you
> have reviews for future changes, the status of any line of code is going to
> have to be "assume by default that it was unreviewed".
>

That actually matches the status of all major components in the repo
including validator: they all were created in CL#191 named "load 1099 into
trunk". But I agree that it's unfortunate consequence.


> This was always going to be an issue for a substantial piece of code
> developed outside of NaCl SVN, but I rather expected you would share your
> plans first, provide some forewarning of what to expect, etc.
>

We HAVE discussed our plans, but apparently these discussions were not
detailed enough. Exactly because it's core component and because it needs
thorough review we wanted to have it committed to SVN now instead of later:
traditional review workflow assumes only one person changes the files and
usually others don't even compile and run them while this process is
underway (theretically they could but very few actually do). This works
fine for small CLs, it does not work as well for hundred lines CL and for
changes which include thousand lines or more it just creates unnecessary
tension and stalls the process.

We've talked about this on Core Runtime meeting and Bennet offered a
solution: we can create subdirectory named "unreviewed" and move all files
to it. Then we can collect various opinions and change files
to accommodate requested changes.

As for sizes... we plan to commit generated files in SVN (like it's done
with current validator) to make sure everything can be built on system
without ragel (in particular on Mac and Windows). Currently these files are
13MB in size uncompressed (and about 600KB compressed) which is about the
same size as IRT and, unlike IRT, they will be changed often.

-- 
You received this message because you are subscribed to the Google Groups
"Native-Client-Reviews" group.
To post to this group, send email to native-client-reviews@googlegroups.com.
To unsubscribe from this group, send email to
native-client-reviews+unsubscribe@googlegroups.com.
For more options, visit this group at
http://groups.google.com/group/native-client-reviews?hl=en.

Powered by Google App Engine
This is Rietveld 408576698