Skip to content

Commit

Permalink
Merge pull request #632 from ELENA-LANG/develop
Browse files Browse the repository at this point in the history
Iteration19 (#631)
  • Loading branch information
arakov authored Feb 10, 2024
2 parents f2fcee9 + 7f9f94e commit f6f9859
Show file tree
Hide file tree
Showing 338 changed files with 45,223 additions and 11,951 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,7 @@ Reach out with any questions you may have and we'll make sure to answer them as
## Resources
- **Nightly builds:** <https://ci.appveyor.com/project/arakov/elena-lang/build/artifacts>
- **ELENA Documentation** <https://github.com/ELENA-LANG/elena-lang/wiki/ELENA-Programming-Manual>
- **ELENA API 5.0** <https://elena-lang.github.io/api/index.html>
- **ELENA API 6.0** <https://elena-lang.github.io/api/index.html>
- **Git clone URL:** <git://github.com/ELENA-LANG/elena-lang.git>
- **Tutorials:** <https://github.com/ELENA-LANG/tutorials>
- **ELENA reddit:** <https://www.reddit.com/r/elena_lang/>
Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
6.0.6
6.0.7
4 changes: 2 additions & 2 deletions appveyor.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
version: 6.0.6.{build}
version: 6.0.7.{build}
branches:
only:
- master
Expand All @@ -18,7 +18,7 @@ build:

artifacts:
# archive the generated packages in the ci.appveyor.com build report
- path: install\output\*.zip
- path: install\output%PLATFORM%\*.zip
name: nightly-build

deploy:
Expand Down
82 changes: 82 additions & 0 deletions asm/aarch64/core60.asm
Original file line number Diff line number Diff line change
Expand Up @@ -953,6 +953,34 @@ inline %76h

end

// ; xsaven
inline %77h

mov x18, __n16_1
str w18, [x10]

end

// ; xsave n
inline %0977h

movz x18, __n16lo_1
movk x18, __n16hi_1, lsl #16

str w18, [x10]

end

// ; xsave n
inline %0A77h

movz x18, __n16lo_1
movk x18, __n16hi_1, lsl #16

str w18, [x10]

end

// ; fabsdp
inline %78h

Expand Down Expand Up @@ -2526,6 +2554,26 @@ inline %0D4h

end

// ; xsavedispn
inline %0D5h

add x19, x10, __arg12_1
mov x18, __n16_2
sxth x18, x18
str w18, [x19]

end

// ; xsavedispn (n > 0FFFFh)
inline %01D5h

add x19, x10, __arg12_1
movz x18, __n16_2
movk x18, __n16hi_2, lsl #16
str w18, [x19]

end

// ; xhookdpr
inline %0D6h

Expand Down Expand Up @@ -3533,6 +3581,40 @@ inline %7F1h

end

// ; xstoresir :n, -1
inline %8F1h

movz x11, __n16lo_1
movk x11, __n16hi_1, lsl #16
sxtw x11, w11

add x12, sp, __arg12_1
str x11, [x12]

end

// ; xstoresir :0, -1
inline %9F1h

movz x11, __n16lo_1
movk x11, __n16hi_1, lsl #16
sxtw x11, w11

mov x0, x11

end

// ; xstoresir :1, -1
inline %0AF1h

movz x11, __n16lo_1
movk x11, __n16hi_1, lsl #16
sxtw x11, w11

mov x1, x11

end

// ; extopenin
inline %0F2h

Expand Down
24 changes: 24 additions & 0 deletions asm/amd64/core60.asm
Original file line number Diff line number Diff line change
Expand Up @@ -868,6 +868,22 @@ inline %476h

end

// ; xsaven
inline %077h

mov eax, __n_1
mov dword ptr [rbx], eax

end

// ; xsaven
inline %177h

xor eax, eax
mov dword ptr [rbx], eax

end

// ; fabsdp
inline %078h

Expand Down Expand Up @@ -2192,6 +2208,14 @@ inline %0D4h

end

// ; xsavedispn
inline %0D5h

mov eax, __n_2
mov dword ptr [rbx+__arg32_1], eax

end

// ; xlabeldpr
inline %0D6h

Expand Down
10 changes: 5 additions & 5 deletions asm/amd64/core60_lnx.asm
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,7 @@ define PREPARE 10006h

define SYSTEM_ENV 20002h
define CORE_GC_TABLE 20003h
define CORE_THREAD_TABLE 2000Bh
define CORE_ET_TABLE 2000Bh
define CORE_SINGLE_CONTENT 2000Bh

// ; --- GC TABLE OFFSETS ---
define gc_header 0000h
Expand All @@ -22,6 +21,7 @@ define gc_mg_wbar 0050h

define et_current 0008h
define tt_stack_frame 0010h
define tt_stack_root 0028h

// ; --- Object header fields ---
define elSizeOffset 0004h
Expand Down Expand Up @@ -79,7 +79,7 @@ procedure % VEH_HANDLER

mov r10, rdx
mov rdx, rax // ; set exception code
mov rax, [data : % CORE_ET_TABLE]
mov rax, [data : % CORE_SINGLE_CONTENT]
jmp rax

end
Expand All @@ -106,7 +106,7 @@ labYGCollect:
push rbp

// ; lock frame
mov [data : %CORE_THREAD_TABLE + tt_stack_frame], rsp
mov [data : %CORE_SINGLE_CONTENT + tt_stack_frame], rsp

push rcx

Expand All @@ -126,7 +126,7 @@ labYGCollect:
push rcx

// ; collect frames
mov rax, [data : %CORE_THREAD_TABLE + tt_stack_frame]
mov rax, [data : %CORE_SINGLE_CONTENT + tt_stack_frame]
mov rcx, rax

labYGNextFrame:
Expand Down
99 changes: 96 additions & 3 deletions asm/ppc64le/core60.asm
Original file line number Diff line number Diff line change
Expand Up @@ -1017,6 +1017,35 @@ inline %76h

end

// ; xsaven
inline %77h

li r18, __n16_1
stw r18, 0(r15)

end

// ; xsaven
inline %977h

lis r18, __n16hi_1
li r19, __n16lo_1
andi. r19, r19, 0FFFFh
add r18, r18, r19
stw r18, 0(r15)

end

// ; xsaven
inline %0A77h

li r18, __n16lo_1
andi. r18, r18, 0FFFFh
addis r18, r18, __n16hi_1
stw r18, 0(r15)

end

// ; fabsdp
inline %078h

Expand Down Expand Up @@ -2340,6 +2369,27 @@ inline %0D4h

end

// ; xsavedispn
inline %0D5h

addi r19, r15, __arg16_1
li r17, __n16_2
stw r17, 0(r19)

end

// ; xsavedispn
inline %1D5h

addi r19, r15, __arg16_1

li r17, __n16lo_1
andi. r17, r17, 0FFFFh
addis r17, r17, __n16hi_1
stw r17, 0(r19)

end

// ; xlabeldpr
inline %0D6h

Expand Down Expand Up @@ -3325,7 +3375,7 @@ inline %1F1h
addis r16, r16, __xdisp32hi_2
addi r16, r16, __xdisp32lo_2

mr r3, r16
mr r3, r16

end

Expand All @@ -3336,7 +3386,16 @@ inline %2F1h
addis r16, r16, __xdisp32hi_2
addi r16, r16, __xdisp32lo_2

mr r4, r16
mr r4, r16

end

// ; xstoresir :n, 0
inline %5F1h

li r16, 0

std r16, __arg16_1(r1)

end

Expand All @@ -3354,6 +3413,32 @@ inline %7F1h

end

// ; xstoresir :n, -1
inline %8F1h

li r16, 0
addi r16, r16, -1

std r16, __arg16_1(r1)

end

// ; xstoresir :0, -1
inline %9F1h

li r3, 0
addi r3, r3, -1

end

// ; xstoresir :1, -1
inline %0AF1h

li r4, 0
addi r4, r4, -1

end

// ; extopenin
inline %0F2h

Expand Down Expand Up @@ -3702,7 +3787,15 @@ inline %0F9h
ld r16, toc_code(r2)
addis r16, r16, __xdisp32hi_2
addi r16, r16, __xdisp32lo_2
std r16, __arg16_1(r1)
std r16, __arg16_1(r31)

end

// ; xstorefir
inline %5F9h

li r16, 0
std r16, __arg16_1(r31)

end

Expand Down
Loading

0 comments on commit f6f9859

Please sign in to comment.