Name Date Size

..25-Oct-20244 KiB

parse_command.pyH A D25-Oct-202414.8 KiB

README-zh.mdH A D25-Oct-20241.4 KiB

README.mdH A D25-Oct-20241.6 KiB

skip_tests.jsonH A D25-Oct-20242 KiB

README.md

1# Introduction
2
3Generate a discrepancy report on the number of bytecode instructions generated by ES2ABC and V8.
4
5# Prepare V8
6
7## 1. Install depot_tools
8
9
10```sh
11git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
12export PATH=/path/to/depot_tools:$PATH
13```
14
15
16## 2. fetch v8 code
17
18Create a V8 source code directory in any directory and switch to it:
19
20```sh
21mkdir ~/v8
22cd ~/v8
23```
24
25Get the V8 source code and all its branches and dependencies using the fetch command
26
27```sh
28fetch v8
29cd v8
30```
31
32
33## 3. Installing dependencies
34
35Execute the following commands in the V8 source directory to pull the latest changes and install any new generated dependencies.
36
37```sh
38git pull
39gclient sync
40```
41
42Next, install the other build dependencies:
43
44```sh
45./build/install-build-deps.sh
46```
47
48
49## 4. compile V8
50
51Use the gm tool for V8 build.
52
53```sh
54tools/dev/gm.py x64.release
55```
56
57The path of the compiled V8 executable program d8 is as follows:
58
59```sh
60out/x64.release/d8
61```
62
63
64# Running the Script
65
66## Usage
67
68```sh
69python3 parse_command.py -es2abc ES2ABC_PATH -v8 D8_PATH [arguments]
70```
71
72### Tail arguments
73
74+ `-es2abc`: path to the executable program es2abc.
75+ `-v8`: path to the V8 executable d8.
76
77### Optional arguments
78
79+ `--add_case`: Add the file path of a single test case to be executed.
80+ `--add_case_dir`: Add the directory where the test cases are to be executed and the script will automatically search for all cases in that directory (By default it filters cases with .js extension).
81+ `--timeout`: Time limits for use case execution (In seconds).
82
83
84# Test Result
85
86Instruction number discrepancy report: `./discrepancy_report.html`
87