Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dev #200

Merged
merged 46 commits into from
Oct 18, 2024
Merged

Dev #200

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
63a68f7
Ensure only the vm that created an object can mark or free it.
mcfriend99 Oct 9, 2024
3e24852
Partially-Functional Draft
mcfriend99 Oct 11, 2024
5f64e08
Partially-Functional Draft 2
mcfriend99 Oct 12, 2024
30fe540
Partially-Functional Draft 3
mcfriend99 Oct 12, 2024
dd4354d
Partially-Functional Draft 3
mcfriend99 Oct 12, 2024
00ceff5
Merge remote-tracking branch 'origin/threads' into threads
mcfriend99 Oct 12, 2024
dad33bf
Merge remote-tracking branch 'origin/threads' into threads
mcfriend99 Oct 12, 2024
6b725ce
Merge remote-tracking branch 'origin/threads' into threads
mcfriend99 Oct 12, 2024
aeb7542
Partially working main draft
mcfriend99 Oct 12, 2024
0a12aa5
Partially working main draft
mcfriend99 Oct 12, 2024
fefc864
Partially working main draft
mcfriend99 Oct 12, 2024
505ee66
Partially working main draft
mcfriend99 Oct 12, 2024
38e31d4
Partially working main draft
mcfriend99 Oct 12, 2024
2462318
Partially working main draft
mcfriend99 Oct 13, 2024
e349b79
First draft with base C working
mcfriend99 Oct 13, 2024
064c303
First draft with base C working
mcfriend99 Oct 14, 2024
58d5fd8
First draft with base C working
mcfriend99 Oct 14, 2024
d718673
Merge remote-tracking branch 'origin/threads' into threads
mcfriend99 Oct 14, 2024
a5c3af2
Merge remote-tracking branch 'origin/threads' into threads
mcfriend99 Oct 14, 2024
a1610a6
Merge remote-tracking branch 'origin/threads' into threads
mcfriend99 Oct 14, 2024
121475c
Merge remote-tracking branch 'origin/threads' into threads
mcfriend99 Oct 14, 2024
61b5f1b
Updated threads
mcfriend99 Oct 14, 2024
57affca
Updated threads
mcfriend99 Oct 14, 2024
c09e3b9
Updated threads
mcfriend99 Oct 14, 2024
dc2fab7
updated stale object implementation to allow for multithreading.
mcfriend99 Oct 14, 2024
23c83a8
use stale objects for threading
mcfriend99 Oct 14, 2024
772c0c9
use stale objects for threading
mcfriend99 Oct 14, 2024
91c562a
Merge remote-tracking branch 'origin/threads' into threads
mcfriend99 Oct 14, 2024
08514c9
use stale objects for threading
mcfriend99 Oct 14, 2024
5c69420
update thread
mcfriend99 Oct 15, 2024
473ab3c
update thread with clean cancel method
mcfriend99 Oct 16, 2024
9e97b95
update thread
mcfriend99 Oct 16, 2024
0e92d7e
update thread
mcfriend99 Oct 16, 2024
6ff96c3
update thread
mcfriend99 Oct 16, 2024
68b0d62
update thread
mcfriend99 Oct 16, 2024
9cbd9e1
update thread
mcfriend99 Oct 17, 2024
2c8fd0c
update thread
mcfriend99 Oct 17, 2024
d3cc2cb
update thread
mcfriend99 Oct 17, 2024
f43db75
update thread
mcfriend99 Oct 17, 2024
f6dc8a1
Introduced unsigned right shift
mcfriend99 Oct 17, 2024
687090f
Introduced sha3 module
mcfriend99 Oct 17, 2024
4239238
Updated benchmarks
mcfriend99 Oct 18, 2024
18788c9
Updated benchmarks
mcfriend99 Oct 18, 2024
79b6a92
Updated benchmarks
mcfriend99 Oct 18, 2024
2ea92db
Updated installation script to use latest release versions only.
mcfriend99 Oct 18, 2024
6e9a2d0
Updated installation script to use latest release versions only.
mcfriend99 Oct 18, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 4 additions & 3 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@ name: CI

on:
push:
branches: [ dev, imagine ]
branches-ignore:
- main
pull_request:
branches: [ main ]

Expand All @@ -29,7 +30,7 @@ jobs:
run: |
sudo apt-get update
sudo apt-get remove libgd3
sudo apt-get install curl libcurl4-openssl-dev libgd-dev libavif-dev libffi-dev -y
sudo apt-get install curl libpthread-stubs0-dev libcurl4-openssl-dev libgd-dev libavif-dev libffi-dev -y
cmake -B .
cmake --build . -- -j 12
chmod +x blade/blade
Expand Down Expand Up @@ -99,7 +100,7 @@ jobs:
run: |
${{ env.VCPKG_ROOT }}/vcpkg update
${{ env.VCPKG_ROOT }}/vcpkg version
${{ env.VCPKG_ROOT }}/vcpkg install pkgconf curl:x64-windows libffi:x64-windows openssl:x64-windows libgd:x64-windows
${{ env.VCPKG_ROOT }}/vcpkg install pkgconf pthreads:x64-windows curl:x64-windows libffi:x64-windows openssl:x64-windows libgd:x64-windows
${{ env.VCPKG_ROOT }}/vcpkg list
- name: Save vcpkg dependencies cache
id: vcpkg-cache-save
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:
run: |
sudo apt-get update
sudo apt-get remove libgd3
sudo apt-get install curl libcurl4-openssl-dev libgd-dev libavif-dev libffi-dev -y
sudo apt-get install curl libpthread-stubs0-dev libcurl4-openssl-dev libgd-dev libavif-dev libffi-dev -y
cmake -B .
cmake --build . -- -j 12
- name: Create ZIP Archive
Expand Down Expand Up @@ -94,7 +94,7 @@ jobs:
run: |
${{ env.VCPKG_ROOT }}/vcpkg update
${{ env.VCPKG_ROOT }}/vcpkg version
${{ env.VCPKG_ROOT }}/vcpkg install pkgconf curl:x64-windows libffi:x64-windows openssl:x64-windows libgd:x64-windows
${{ env.VCPKG_ROOT }}/vcpkg install pkgconf pthreads:x64-windows curl:x64-windows libffi:x64-windows openssl:x64-windows libgd:x64-windows
${{ env.VCPKG_ROOT }}/vcpkg list
- name: Compile
run: |
Expand Down
15 changes: 12 additions & 3 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ set(BLADE_SOURCES
src/standard/process.c
src/standard/reflect.c
src/standard/struct.c
)
src/standard/thread.c)

add_definitions(-DEXPORT_LIBS)

Expand Down Expand Up @@ -131,7 +131,7 @@ check_function_exists("gettimeofday" HAVE_GETTIMEOFDAY)
if(NOT "${HAVE_GETTIMEOFDAY}")
target_link_libraries(libblade PRIVATE gettimeofday)
endif()
target_link_libraries(libblade PRIVATE threads)
check_function_exists("timespec_get" HAVE_TIMESPEC_GET)

check_function_exists("utime" HAVE_UTIME)
check_function_exists("basename" HAVE_BASENAME)
Expand Down Expand Up @@ -189,14 +189,23 @@ if(UNIX)

target_link_libraries(libblade PRIVATE m)
if(${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
target_link_libraries(libblade PRIVATE pthread)
target_link_libraries(libblade PRIVATE dl)
endif()

set(THREADS_PREFER_PTHREAD_FLAG ON)
find_package(Threads REQUIRED)
target_link_libraries(libblade PRIVATE Threads::Threads)
# target_link_libraries(libblade PRIVATE pthread)
endif(UNIX)

if(WIN32)
add_dependencies(libblade mman)
target_link_libraries(libblade PRIVATE mman)

find_package(PThreads4W REQUIRED)
target_link_libraries(libblade PRIVATE PThreads4W::PThreads4W)

set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-pragmas")
endif()

target_link_libraries(blade PRIVATE libblade)
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

[![Build Status](https://github.com/blade-lang/blade/actions/workflows/ci.yml/badge.svg)](https://github.com/blade-lang/blade/actions)
[![Gitter](https://badges.gitter.im/blade-lang/community.svg)](https://gitter.im/blade-lang/community)
[![License](https://img.shields.io/badge/License-MIT-blue.svg)](https://github.com/blade-lang/blade/blob/master/LICENSE)
[![License](https://img.shields.io/badge/License-BSDL-blue.svg)](https://github.com/blade-lang/blade/blob/master/LICENSE)
[![Coverage Status](https://coveralls.io/repos/github/blade-lang/blade/badge.svg?branch=main)](https://coveralls.io/github/blade-lang/blade?branch=main)
[![Version](https://img.shields.io/badge/version-0.0.86-green)](https://github.com/blade-lang/blade)

Expand Down
Loading
Loading