blueloveTH 3 lat temu
rodzic
commit
a71b1a6e90
11 zmienionych plików z 13 dodań i 14 usunięć
  1. 1 0
      LICENSE
  2. 1 0
      README.md
  3. 2 1
      README_zh.md
  4. 1 1
      amalgamate.py
  5. 2 1
      build.py
  6. 1 1
      compile_flags.txt
  7. 1 1
      preprocess.py
  8. 1 1
      run_profile.sh
  9. 0 3
      run_profile_test.sh
  10. 0 3
      run_tests.sh
  11. 3 2
      src/vm.h

+ 1 - 0
LICENSE

@@ -19,3 +19,4 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 SOFTWARE.
+

+ 1 - 0
README.md

@@ -184,3 +184,4 @@ Check our [Coding Style Guide](https://pocketpy.dev/coding_style_guide/) if you
 ## License
 
 PocketPy is licensed under the [MIT License](http://opensource.org/licenses/MIT).
+

+ 2 - 1
README_zh.md

@@ -154,4 +154,5 @@ flutter pub add pocketpy
 
 ## 开源协议
 
-MIT License
+MIT License
+

+ 1 - 1
amalgamate.py

@@ -77,4 +77,4 @@ if os.path.exists("plugins/godot/godot-cpp/pocketpy"):
 if os.path.exists("/mnt/e/PainterEngine/project/pocketpy.h"):
 	shutil.copy("amalgamated/pocketpy.h", "/mnt/e/PainterEngine/project/pocketpy.h")
 
-print("amalgamated/pocketpy.h")
+print("amalgamated/pocketpy.h")

+ 2 - 1
build.py

@@ -52,4 +52,5 @@ rm -rf web/lib/
 mkdir -p web/lib/
 em++ src/main.cpp -fno-rtti -fexceptions -O3 -sEXPORTED_FUNCTIONS=_pkpy_delete,_pkpy_setup_callbacks,_pkpy_new_repl,_pkpy_repl_input,_pkpy_new_vm,_pkpy_vm_add_module,_pkpy_vm_bind,_pkpy_vm_eval,_pkpy_vm_exec,_pkpy_vm_get_global,_pkpy_vm_read_output -sEXPORTED_RUNTIME_METHODS=ccall -o web/lib/pocketpy.js
 ''')
-    DONE()
+    DONE()
+

+ 1 - 1
compile_flags.txt

@@ -2,4 +2,4 @@
 -Wall
 -W*
 -std=c++17
--stdlib=libc++
+-stdlib=libc++

+ 1 - 1
preprocess.py

@@ -33,4 +33,4 @@ namespace pkpy{
     return header
 
 with open("src/_generated.h", "w", encoding='utf-8') as f:
-    f.write(generate_python_sources())
+    f.write(generate_python_sources())

+ 1 - 1
run_profile.sh

@@ -2,4 +2,4 @@ clang++ -pg -O2 -std=c++17 -fno-rtti -stdlib=libc++ -Wall -o pocketpy src/main.c
 time ./pocketpy benchmarks/fib.py
 mv benchmarks/gmon.out .
 gprof pocketpy gmon.out > gprof.txt
-rm gmon.out
+rm gmon.out

+ 0 - 3
run_profile_test.sh

@@ -5,6 +5,3 @@ mkdir -p .coverage
 llvm-cov-15 gcov main.gc -r -s src/ >> .coverage/coverage.txt
 mv *.gcov .coverage
 rm main.gc*
-
-# -fprofile-instr-generate -fcoverage-mapping 
-# llvm-cov-15 show main.gc -instr-profile=default.profraw -format=html -output-dir .coverage

+ 0 - 3
run_tests.sh

@@ -5,6 +5,3 @@ mkdir -p .coverage
 llvm-cov-15 gcov main.gc -r -s src/ >> .coverage/coverage.txt
 mv *.gcov .coverage
 rm main.gc*
-
-# -fprofile-instr-generate -fcoverage-mapping 
-# llvm-cov-15 show main.gc -instr-profile=default.profraw -format=html -output-dir .coverage

+ 3 - 2
src/vm.h

@@ -108,7 +108,7 @@ public:
         this->vm = this;
         this->_stdout = use_stdio ? &std::cout : &_stdout_buffer;
         this->_stderr = use_stdio ? &std::cerr : &_stderr_buffer;
-        callstack.data().reserve(8);
+        callstack.reserve(8);
         init_builtin_types();
     }
 
@@ -357,6 +357,7 @@ public:
 
     ~VM() {
         callstack.clear();
+        s_data.clear();
         _all_types.clear();
         _modules.clear();
         _lazy_modules.clear();
@@ -967,7 +968,7 @@ inline void VM::_error(Exception e){
         e.is_re = false;
         throw e;
     }
-    s_data.push(VAR(e));
+    PUSH(VAR(e));
     _raise();
 }