tgschultz
58610a4427
Add std.meta to deployment ( #1670 )
2018-10-20 11:40:26 -04:00
Andrew Kelley
3e72411db0
C ABI and compiler rt improvements for ARM
...
* add __multi3 compiler rt function. See #1290
* compiler rt includes ARM functions for thumb and aarch64 and
other sub-arches left out. See #1526
* support C ABI for returning structs on ARM. see #1481
2018-10-13 15:18:00 -04:00
emekoi
a22d9daaec
added math.pow support for integer types. resolves #1637 ( #1642 )
...
added math.powi for integers; pow now handles ints
2018-10-10 10:50:23 -04:00
Andrew Kelley
d40c4e7c89
Merge pull request #1429 from shawnl/arm64
...
initial arm64 support
2018-10-06 00:11:39 -04:00
Andrew Kelley
d07413f9b7
fix missing .h files
...
closes #1634
2018-10-04 18:14:57 -04:00
Andrew Kelley
66cb75d114
std.Mutex: implement blocking mutexes on linux
...
closes #1463
Thanks to Shawn Landden for the original pull request.
This commit is based on that code.
2018-10-03 13:19:10 -04:00
Andrew Kelley
9d4eaf1e07
update std lib API for I/O
...
std.io.FileInStream -> std.os.File.InStream
std.io.FileInStream.init(file) -> file.inStream()
std.io.FileOutStream -> std.os.File.OutStream
std.io.FileOutStream.init(file) -> file.outStream()
remove a lot of error code possibilities from os functions
std.event.net.socketRead -> std.event.net.read
std.event.net.socketWrite -> std.event.net.write
add std.event.net.readv
add std.event.net.writev
add std.event.net.readvPosix
add std.event.net.writevPosix
add std.event.net.OutStream
add std.event.net.InStream
add std.event.io.InStream
add std.event.io.OutStream
2018-09-30 17:28:35 -04:00
Andrew Kelley
418b2e7d47
build: omit finding libxml2, zlib since no direct dependency
2018-09-30 16:56:06 -04:00
Andrew Kelley
57c4d38c55
rename std.event.tcp to std.event.net
2018-09-30 10:37:58 -04:00
emekoi
e6446dfc86
fixed native target detection
2018-09-30 09:27:53 -04:00
Andrew Kelley
e242f6a609
Release 0.3.0
2018-09-28 09:03:40 -04:00
Andrew Kelley
f4a0658585
rely on gcc for static builds on macos
2018-09-27 22:27:52 -04:00
Andrew Kelley
fe524a1fa5
build: add support for ZIG_STATIC on MacOS
2018-09-27 15:09:14 -04:00
Andrew Kelley
492821781d
add workaround for llvm-config --system-libs
...
not handling static libs correctly
2018-09-19 18:28:50 -04:00
Andrew Kelley
4b2719b51d
Merge remote-tracking branch 'origin/master' into llvm7
2018-09-18 15:05:47 -04:00
emekoi
68c1d05917
compiling on mingw is now supported ( #1542 )
...
* compiles on mingw-w64
* fixed error in os_file_overwrite on windows
* fixed windows hello_world example
2018-09-18 00:13:17 -04:00
Andrew Kelley
4c6f1e614a
remove zig build --init
. add zig init-lib
and zig init-exe
...
init-lib creates a working static library with tests, and
init-exe creates a working hello world with a `run` target.
both now have test coverage with the new "cli tests" file.
closes #1035
2018-09-17 17:11:18 -04:00
Andrew Kelley
a2abdb185f
Merge remote-tracking branch 'origin/master' into llvm7
2018-09-16 10:51:58 -04:00
Andrew Kelley
a1132ffe0f
stage1: build blake code with -std=c99
2018-09-11 17:29:18 -04:00
Andrew Kelley
5ee5933ade
stage1 caching: zig no longer uses zig-cache
2018-09-10 17:30:45 -04:00
Andrew Kelley
c9474faa4e
Merge remote-tracking branch 'origin/master' into llvm7
2018-09-10 12:30:57 -04:00
Andrew Kelley
fbe5737c84
stage1: always optimize blake and softfloat even in debug mode
2018-09-10 09:46:15 -04:00
Andrew Kelley
173fc842c4
basic compiler id hash working
2018-09-09 18:38:41 -04:00
Shawn Landden
342cff28f5
initial arm64 support
2018-09-08 03:52:28 +00:00
Andrew Kelley
2d4b95900e
stage1: import blake2b implementation
...
from master branch of blake2 reference implementation
320c325437539ae91091ce62efec1913cd8093c2
2018-09-05 23:23:11 -04:00
Andrew Kelley
ba7836ea48
stage1: fix build on macos
2018-09-05 12:10:53 -04:00
Andrew Kelley
9a123697e3
fix compile error on gcc 7.3.0
...
Only set -Werror for debug builds, and only for zig itself, not for
embedded LLD.
See #1474
2018-09-05 10:18:12 -04:00
Andrew Kelley
ac3cf0775f
Merge pull request #1474 from ziglang/issue-1357
...
Downgrade new g++-8.0 error to warning
2018-09-05 09:05:01 -04:00
Marc Tiehuis
ef2b8d4574
Downgrade new g++-8.0 error to warning
...
Allows building in Debug mode. Closes #1357 .
2018-09-05 20:43:14 +12:00
Andrew Kelley
dbde8254d0
Merge remote-tracking branch 'origin/master' into llvm7
2018-09-04 11:58:31 -04:00
Andrew Kelley
2bd2a8ea34
Merge pull request #1441 from ziglang/poly1305-x25519
...
Add poly1305 and x25519 crypto primitives
2018-09-04 10:34:46 -04:00
Andrew Kelley
92f7474359
switch most windows calls to use W versions instead of A
...
See #534
2018-09-02 23:25:04 -04:00
Marc Tiehuis
65b89f598c
Add poly1305 and x25519 crypto primitives
...
These are translated from [monocypher](https://monocypher.org/ ) which
has fairly competitive performance while remaining quite simple.
Initial performance comparision:
Zig:
Poly1305: 1423 MiB/s
X25519: 8671 exchanges per second
Monocypher:
Poly1305: 1567 MiB/s
X25519: 10539 exchanges per second
There is room for improvement and no real effort has been made at all in
optimization beyond a direct translation.
2018-08-30 18:02:19 +12:00
Andrew Kelley
f1b71053de
use RtlCaptureStackBackTrace on windows
2018-08-29 16:35:51 -04:00
Andrew Kelley
41723f842c
Merge branch 'windows-coff-issue721' of https://github.com/Sahnvour/zig into Sahnvour-windows-coff-issue721
2018-08-28 17:32:32 -04:00
Shawn Landden
444edd9aed
std.crypto: add chaCha20
...
v3
2018-08-27 19:44:11 -07:00
Andrew Kelley
7109035b78
Merge remote-tracking branch 'origin/master' into llvm7
2018-08-25 21:57:28 -04:00
Andrew Kelley
c4d31c8323
build: update embedded LLD build files
2018-08-04 18:09:19 -04:00
Andrew Kelley
e3ae2cfb52
add std.event.RwLock and a few more std changes
...
* add std.event.RwLock and std.event.RwLocked
* std.debug.warn does its printing locked
* add std.Mutex, however it's currently implemented as a spinlock
* rename std.event.Group.cancelAll to std.event.Group.deinit and change
the docs and assumptions.
* add std.HashMap.clone
2018-08-01 16:26:37 -04:00
Andrew Kelley
cc45527333
introduce std.event.fs for async file system functions
...
only works on linux so far
2018-07-30 13:44:36 -04:00
Andrew Kelley
5a919dd82d
Merge remote-tracking branch 'origin/master' into self-hosted-libc-hello-world
2018-07-23 14:32:13 -04:00
Andrew Kelley
93e78ee722
self-hosted can compile libc hello world
2018-07-22 23:28:53 -04:00
Andrew Kelley
20f286f22a
re-organize std lib darwin files
2018-07-22 00:04:24 -04:00
Sahnvour
2ec9a11646
Very much WIP base implementation for #721 .
...
Currently does:
- read COFF executable file
- locate and load corresponding .pdb file
- expose .pdb content as streams (PDB format)
2018-07-21 20:30:11 +02:00
kristopher tate
501dd5f284
CMakeLists.txt: add darwin_socket.zig;
...
Tracking issue #1271 ;
thanks @Hejsil;
2018-07-22 01:47:53 +09:00
Andrew Kelley
58c5f94a99
self-hosted: share C++ code for finding libc on windows
2018-07-20 23:38:13 -04:00
Andrew Kelley
1d85b588ea
self-hosted: progress on IR for supporting libc hello world
...
* add c int types
* some more ir stubs
2018-07-19 00:08:47 -04:00
Andrew Kelley
a8a1b5af07
fix build on windows
...
* move getAppDataDir and utf16leToUtf8 from self-hosted to std lib
* fix std.event.Loop on windows
2018-07-18 10:07:22 -04:00
Andrew Kelley
97bfeac13f
self-hosted: create tmp dir for .o files and emit .o file for fn
2018-07-16 20:52:50 -04:00
Andrew Kelley
9751a0ae04
std.atomic: use spinlocks
...
the lock-free data structures all had ABA problems and
std.atomic.Stack had a possibility to load an unmapped memory address.
2018-07-11 19:38:01 -04:00