From 465ec3bf86460966be318a121226596b2b3077ec Mon Sep 17 00:00:00 2001 From: Stefan Lankes Date: Sat, 21 Nov 2020 09:12:51 +0100 Subject: [PATCH 1/7] using of the asm feature to improve the performance of basic functions in principle the PR uses rust-lang/compiler-builtins#365 to improve the performance --- .cargo/config | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.cargo/config b/.cargo/config index df13268ce..3241f7238 100644 --- a/.cargo/config +++ b/.cargo/config @@ -1,6 +1,6 @@ [unstable] build-std = ["std", "core", "alloc", "panic_abort"] -build-std-features = ["compiler-builtins-mem"] +build-std-features = ["compiler-builtins-mem", "compiler-builtins-asm"] [build] target = "x86_64-unknown-hermit" From fbd93e95c9fcd244eb0f8518b0a6e762619556ff Mon Sep 17 00:00:00 2001 From: Stefan Lankes Date: Sat, 21 Nov 2020 11:39:46 +0100 Subject: [PATCH 2/7] use latest version of "setup-rust-action" --- .github/workflows/format.yml | 2 +- .github/workflows/test.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/format.yml b/.github/workflows/format.yml index 921808bdd..d88e3bfce 100644 --- a/.github/workflows/format.yml +++ b/.github/workflows/format.yml @@ -25,7 +25,7 @@ jobs: steps: - - uses: hecrj/setup-rust-action@v1.3.1 + - uses: hecrj/setup-rust-action@v1.3.4 with: rust-version: ${{ matrix.rust }} components: ${{ matrix.components || '' }} diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 517939ed2..512a9d376 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -37,7 +37,7 @@ jobs: targets: 'x86_64-unknown-linux-gnu' steps: - - uses: hecrj/setup-rust-action@v1.3.1 + - uses: hecrj/setup-rust-action@v1.3.4 with: rust-version: ${{ matrix.rust }} components: ${{ matrix.components || '' }} From 20f79b135e67c6cbeef9952a28b22da5510f48d6 Mon Sep 17 00:00:00 2001 From: Stefan Lankes Date: Sat, 21 Nov 2020 12:51:14 +0100 Subject: [PATCH 3/7] use ghaction-chocolatey to install chocolatey --- .github/workflows/format.yml | 2 +- .github/workflows/test.yml | 8 +++----- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/.github/workflows/format.yml b/.github/workflows/format.yml index d88e3bfce..33895f2da 100644 --- a/.github/workflows/format.yml +++ b/.github/workflows/format.yml @@ -25,7 +25,7 @@ jobs: steps: - - uses: hecrj/setup-rust-action@v1.3.4 + - uses: hecrj/setup-rust-action@v1 with: rust-version: ${{ matrix.rust }} components: ${{ matrix.components || '' }} diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 512a9d376..3745bba61 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -37,7 +37,7 @@ jobs: targets: 'x86_64-unknown-linux-gnu' steps: - - uses: hecrj/setup-rust-action@v1.3.4 + - uses: hecrj/setup-rust-action@v1 with: rust-version: ${{ matrix.rust }} components: ${{ matrix.components || '' }} @@ -55,10 +55,8 @@ jobs: brew install qemu nasm if: ${{ matrix.os == 'macOS-latest' }} - name: Install qemu/nasm (windows) - run: | - choco install qemu nasm - echo "::add-path::C:\Program Files\NASM" - echo "::add-path::C:\Program Files\qemu" + uses: crazy-max/ghaction-chocolatey@v1 + with: install qemu nasm if: ${{ matrix.os == 'windows-latest' }} - name: Building dev version run: From 244f5428c76848c8321112471cbf32107a82290b Mon Sep 17 00:00:00 2001 From: Stefan Lankes Date: Sat, 21 Nov 2020 12:56:00 +0100 Subject: [PATCH 4/7] remove typo --- .github/workflows/test.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 3745bba61..8c34c55bc 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -56,7 +56,8 @@ jobs: if: ${{ matrix.os == 'macOS-latest' }} - name: Install qemu/nasm (windows) uses: crazy-max/ghaction-chocolatey@v1 - with: install qemu nasm + with: + args: install qemu nasm if: ${{ matrix.os == 'windows-latest' }} - name: Building dev version run: From eecda7fa3833f3f261f3177361495e1426b23ee3 Mon Sep 17 00:00:00 2001 From: Stefan Lankes Date: Sat, 21 Nov 2020 15:16:56 +0100 Subject: [PATCH 5/7] set path to nasm/qemu --- .github/workflows/test.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 8c34c55bc..2999e4059 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -59,6 +59,11 @@ jobs: with: args: install qemu nasm if: ${{ matrix.os == 'windows-latest' }} + - name: Set path to qemu/nasm (Windows) + run: | + echo "C:\Program Files\qemu" >> $GITHUB_PATH + echo "C:\Program Files\nasm" >> $GITHUB_PATH + if: ${{ matrix.os == 'windows-latest' }} - name: Building dev version run: cargo build -Z build-std=std,core,alloc,panic_abort --target x86_64-unknown-hermit From ff50a654f833ba799e2691b31505fa7532f969a2 Mon Sep 17 00:00:00 2001 From: Stefan Lankes Date: Sat, 21 Nov 2020 15:33:17 +0100 Subject: [PATCH 6/7] don't use the makefile on Windows The makefile shouldn't be executed with powershell, since it doesn't work. --- .github/workflows/test.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 2999e4059..c268fd2b9 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -75,6 +75,7 @@ jobs: - name: Build loader (unix) working-directory: loader run: make + if: ${{ ( matrix.os == 'macOS-latest' ) || ( matrix.os == 'ubuntu-latest' ) }} # Workaround since makefile doesn't work when using powershell - name: Build loader (windows) working-directory: loader From 353d1805139931c0fac62fdb7dda561df1e9e2ff Mon Sep 17 00:00:00 2001 From: Stefan Lankes Date: Sat, 21 Nov 2020 17:48:18 +0100 Subject: [PATCH 7/7] use powershell commands to set GITHUB_PATH --- .github/workflows/test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index c268fd2b9..8517ef1a7 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -61,8 +61,8 @@ jobs: if: ${{ matrix.os == 'windows-latest' }} - name: Set path to qemu/nasm (Windows) run: | - echo "C:\Program Files\qemu" >> $GITHUB_PATH - echo "C:\Program Files\nasm" >> $GITHUB_PATH + echo "C:\Program Files\qemu" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append + echo "C:\Program Files\nasm" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append if: ${{ matrix.os == 'windows-latest' }} - name: Building dev version run: