aboutsummaryrefslogtreecommitdiff
path: root/lib/std/special
AgeCommit message (Collapse)Author
2020-03-31remove unnecessary `inline`Andrew Kelley
works around a bug triggered by previous commit
2020-03-31clean up the duplicate export logic for __clear_cacheAndrew Kelley
2020-03-31compiler-rt: More clear_cache implementationsLemonBoy
2020-03-31std: linux syscall numbers are now an extensible enumdaurnimator
2020-03-30compiler-rt: don't export __clear_cache when no impl availableAndrew Kelley
2020-03-31compiler-rt: implement clear_cache for arm32-linuxTimon Kruiper
2020-03-30std lib API deprecations for the upcoming 0.6.0 releaseAndrew Kelley
See #3811
2020-03-30compiler-rt: Implement all the shift builtinsLemonBoy
* Unify all the code paths with a generic function * Add some EABI aliases Closes #4853
2020-03-27compiler-rt: Fix __floatunditfLemonBoy
This builtin converts a u64 into a f128, not a u128 into a f128. Fixes some weird-ass crashes that happened only on AArch64 systems.
2020-03-24compiler-rt: Add __divtf3LemonBoy
2020-03-24compiler-rt: fix __clear_cache on aarch64 darwinAndrew Kelley
2020-03-24compiler-rt: aarch64 implementation of __clear_cacheAndrew Kelley
2020-03-24Merge remote-tracking branch 'origin/llvm10'Andrew Kelley
LLVM 10 was released today
2020-03-15allow `_` separators in number literals (stage 1)momumi
* Underscores `_` may be placed between two digits in a int/float literal * Consecutive underscores are not allowed * Fixed parsing bug in exponents of hexadecimal float literals. Exponents should always be base 10, but hex characters would be parsed inside the exponent and everything after them would be ignored. eg: `0x1.0p1ab1` would be parsed as `0x1.0p1`.
2020-03-13Merge remote-tracking branch 'origin/master' into llvm10Andrew Kelley
2020-03-10fix regressions found by test suiteAndrew Kelley
2020-03-04Merge remote-tracking branch 'origin/master' into llvm10Andrew Kelley
2020-03-04Generated documentation mobile supportpfg
2020-03-03Merge remote-tracking branch 'origin/master' into llvm10Andrew Kelley
2020-03-01short std.builtin enum literals in std libxackus
2020-03-01breaking: std.mem.len no longer takes a type argumentAndrew Kelley
also update fmt code to use std.mem.span.
2020-02-28stage1: make get_native_target go through self-hostedAndrew Kelley
2020-02-28compiler-rt: inline at call site to workaround a bugAndrew Kelley
The bug is #2154
2020-02-28fix __stack_chk_guard emitted even when not linking libcAndrew Kelley
2020-02-28fix standardTargetOptions and improve init-exe to use itAndrew Kelley
2020-02-28update std lib to new Target APIAndrew Kelley
2020-02-28introduce operating system version ranges as part of the targetAndrew Kelley
* re-introduce `std.build.Target` which is distinct from `std.Target`. `std.build.Target` wraps `std.Target` so that it can be annotated as "the native target" or an explicitly specified target. * `std.Target.Os` is moved to `std.Target.Os.Tag`. The former is now a struct which has the tag as well as version range information. * `std.elf` gains some more ELF header constants. * `std.Target.parse` gains the ability to parse operating system version ranges as well as glibc version. * Added `std.Target.isGnuLibC()`. * self-hosted dynamic linker detection and glibc version detection. This also adds the improved logic using `/usr/bin/env` rather than invoking the system C compiler to find the dynamic linker when zig is statically linked. Related: #2084 Note: this `/usr/bin/env` code is work-in-progress. * `-target-glibc` CLI option is removed in favor of the new `-target` syntax. Example: `-target x86_64-linux-gnu.2.27` closes #1907
2020-02-25Merge remote-tracking branch 'origin/master' into llvm10Andrew Kelley
2020-02-24Merge pull request #4547 from Vexu/deprecateAndrew Kelley
Remove deprecated builtins
2020-02-24expose --verbose-llvm-cpu-features to zig buildAndrew Kelley
2020-02-24remove uses of `@ArgType` and `@IntType`Vexu
2020-02-24remove usages of `@typeId`, `@memberCount`, `@memberName` and `@memberType`Vexu
2020-02-14Merge remote-tracking branch 'origin/master' into llvm10Andrew Kelley
2020-02-11compiler-rt: Export the AEABI builtins when targeting thumbLemonBoy
2020-02-10Merge remote-tracking branch 'origin/master' into llvm10Andrew Kelley
2020-02-10Merge pull request #4404 from ziglang/async-stdAndrew Kelley
a big step towards std lib integration with async I/O
2020-02-09compiler_rt: Fix clzsi2 implementation for Thumb1LemonBoy
The LUT contains the number of bits set, not the number of leading zeros as we're subtracting from the total number of bits in a word. Closes #4415
2020-02-07remove workarounds for Windows native CPU featuresAndrew Kelley
bug fixed in LLVM 10 closes #508
2020-02-06more std lib async I/O integrationAndrew Kelley
* `zig test` gainst `--test-evented-io` parameter and gains the ability to seamlessly run async tests. * `std.ChildProcess` opens its child process pipe with O_NONBLOCK when using evented I/O * `std.io.getStdErr()` gives a File that is blocking even in evented I/O mode. * Delete `std.event.fs`. The functionality is now merged into `std.fs` and async file system access (using a dedicated thread) is automatically handled. * `std.fs.File` can be configured to specify whether its handle is expected to block, and whether that is OK to block even when in async I/O mode. This makes async I/O work correctly for e.g. the file system as well as network. * `std.fs.File` has some deprecated functions removed. * Missing readv,writev,pread,pwrite,preadv,pwritev functions are added to `std.os` and `std.fs.File`. They are all integrated with async I/O. * `std.fs.Watch` is still bit rotted and needs to be audited in light of the new async/await syntax. * `std.io.OutStream` integrates with async I/O * linked list nodes in the std lib have default `null` values for `prev` and `next`. * Windows async I/O integration is enabled for reading/writing file handles. * Added `std.os.mode_t`. Integer sizes need to be audited. * Fixed #4403 which was causing compiler to crash. This is working towards: ./zig test ../test/stage1/behavior.zig --test-evented-io Which does not successfully build yet. I'd like to enable behavioral tests and std lib tests with --test-evented-io in the test matrix in the future, to prevent regressions.
2020-02-05ability to run tests in evented I/O modeAndrew Kelley
This adds `--test-evented-io` as a CLI parameter. see #3117
2020-01-30Fix testing.allocator wiringBenjamin Feng
2020-01-29Promoted "leak_count_allocator" to the main testing.allocatorBenjamin Feng
2020-01-29Use defer/panic to better account for test failureBenjamin Feng
2020-01-29Create leak_count_allocatorBenjamin Feng
2020-01-29Move debug.global_allocator to testing.allocatorBenjamin Feng
2020-01-25Merge remote-tracking branch 'origin/master' into layneson-cpus_and_featuresAndrew Kelley
2020-01-23disable f128 compiler_rt tests failing on windowsAndrew Kelley
These were never working with native CPU features. In this branch, we fix native CPU features not being enabled on Windows, and regress f128 language features. In the llvm10 branch, all this is fixed, and the tests are re-enabled.
2020-01-22compiler_rt: fix mulsi3 test typoMichael Dusan
2020-01-22compiler-rt: Port __mulsi3 builtinLemonBoy
2020-01-19Fix some tests broken by the renamed filesLemonBoy