Matt Knight
295f09eadc
implemented and testing op codes for instructions documented in the unofficial bpf insn reference
2020-09-06 16:12:27 -07:00
Andrew Kelley
32a77a6047
Merge pull request #6239 from pfgithub/patch-1
...
Support allocating 0 bit types
2020-09-06 01:16:33 -04:00
Veikka Tuominen
41bbadbb9a
Merge pull request #6246 from Vexu/field
...
Remove deprecated fields on `type`
2020-09-05 13:58:02 +03:00
Andrew Kelley
cff14dc2c6
Merge pull request #6247 from alexnask/stage2_pe
...
Added a basic Portable Executable linker to stage2
2020-09-04 16:05:58 -04:00
Andrew Kelley
209a3da4f7
provide default implementation of std.log on freestanding
...
closes #6252
2020-09-04 13:00:10 -07:00
Vexu
09c861b829
update rest of tests
2020-09-04 22:49:14 +03:00
yettinmoor
0c43b6ef5c
document how to escape curly braces in fmt.format
2020-09-04 22:11:09 +03:00
Vexu
6b2f4fd20d
langref: atomic ops are allowed on pointers
...
Closes #6217
2020-09-04 22:02:39 +03:00
Alexandros Naskos
e9807418e7
Added .pe ObjectFormat
...
MachO linker no longer collects unused dwarf debug information
2020-09-04 05:22:26 +03:00
Alexandros Naskos
e9b137f23a
Completed basic PE linker for stage2
...
Added std.coff.MachineType
Added image characteristic and section flag valued to std.coff
Added std.Target.Cpu.Arch.toCoffMachine
Fixed stage2 --watch flag on windows
2020-09-04 05:15:03 +03:00
Alexandros Naskos
fe0ad8d6e9
Write PE section table
2020-09-04 05:12:27 +03:00
Alexandros Naskos
fac9a4e286
Start working on PE/COFF linking.
2020-09-04 05:12:26 +03:00
pfg
abe672956e
Test 0 bit allocation
2020-09-03 16:33:47 -07:00
Felix (xq) Queißner
88724b2a89
Introduces a space after the ellipsis for test and progress.
2020-09-03 18:07:30 -04:00
Andrew Kelley
1034459170
Merge pull request #6243 from ifreund/uid-gid-cleanup
...
std: clean up usage of uid_t/gid_t, add seteuid/setegid to std.os
2020-09-03 18:05:59 -04:00
Andrew Kelley
17f36566de
stage2: upgrade Scope.Container decls from ArrayList to HashMap
2020-09-03 15:02:38 -07:00
Andrew Kelley
f2bbd8a548
Merge pull request #6242 from Vexu/stage2
...
Stage2: slicing and split container scope from file scope
2020-09-03 17:22:57 -04:00
Jakub Konka
dac1cd7750
Write out simple Mach-O object file
...
This commit adds enough Mach-O linker implementation to write out simple
Mach-O object file. Be warned however, the object file is largely incomplete:
misses relocation info, debug symbols, etc. However, it seemed like a
good starting to get the basic understanding right.
Signed-off-by: Jakub Konka <kubkon@jakubkonka.com>
2020-09-03 16:43:47 -04:00
Lachlan Easton
2a58e30bd5
std meta: fix use of alignOf in meta.cast
2020-09-03 14:11:04 -04:00
Andrew Kelley
39a80cf59e
Merge pull request #6238 from Aransentin/master
...
Add the "sync" family of functions
2020-09-03 14:07:36 -04:00
Kenta Iwasaki
50e3906951
os: return error.SocketNotListening for EINVAL on accept ( #6226 )
2020-09-03 13:57:08 -04:00
LemonBoy
969547902b
std: Fix silent overflow in float parsing code
...
A u64 can only hold 19 decimal digits, adjust the limit.
2020-09-03 18:14:19 +03:00
Vexu
1df0f3ac24
update uses of deprecated type field access
2020-09-03 18:10:40 +03:00
Vexu
4eeeda0f52
remove deprecated fields from types
2020-09-03 16:49:20 +03:00
Isaac Freund
d0d6647fdb
std: add seteuid/setegid to std.os
...
Currently these are only implemented for linux.
2020-09-03 15:22:43 +02:00
Isaac Freund
01a365f1b0
std: ensure seteuid/setegid do not change saved id
2020-09-03 15:16:26 +02:00
Isaac Freund
e8a2aecd2f
std: fix linux uid_t, use uid_t/gid_t in std.os
...
- correct uid_t from i32 to u32 on linux
- define uid_t and gid_t for OSes missing definitions
- use uid_t/gid_t instead of plain u32s throughout std.os
2020-09-03 15:08:37 +02:00
Vexu
6f0126e957
stage2: split Scope.Container from Scope.File
2020-09-03 15:06:45 +03:00
Vexu
1174cb1517
stage2: fix tokenizer float bug
2020-09-03 15:05:47 +03:00
Vexu
6ab0ac161e
stage2: slice return type analysis
2020-09-03 15:05:47 +03:00
Vexu
2a628fd401
stage2: astgen slice
2020-09-03 15:05:46 +03:00
Vexu
ff7c6e1e3c
stage2: astgen orelse
2020-09-03 15:05:43 +03:00
Vexu
9a59cdcd41
stage2: various small type fixes
2020-09-03 15:05:10 +03:00
Jens Goldberg
68818983ae
Split the sync tests into sync and fsync
2020-09-03 09:52:26 +00:00
Jens Goldberg
e747d2ba17
Add C declarations and tests for the sync functions
2020-09-03 07:49:18 +00:00
pfg
bf1d83482b
"Support" allocating 0 bit types
2020-09-02 22:28:37 -07:00
daurnimator
fb3c5b84ed
std: add fmt option to escape non-printable characters
2020-09-02 19:18:36 -04:00
Andrew Kelley
c86108dd63
Merge pull request #6229 from LemonBoy/fix-6054
...
ir: Typecheck the sentinel value in *[N:S1]T to [S2]T casts
2020-09-02 19:13:21 -04:00
Aransentin
25f6663304
Add the sync functions
2020-09-02 22:16:40 +00:00
Andrew Kelley
405c7215a8
Merge pull request #6194 from LakeByTheWoods/fmt_indentation
...
Refactor zig fmt indentation. Remove indent from rendering code
2020-09-02 18:14:28 -04:00
Lachlan Easton
bb848dbeee
zig fmt: Patch rename stream to ais (auto indenting stream) & other small refactors
2020-09-02 20:16:28 +10:00
Andrew Kelley
12ce6eb8f6
stage2: support dbg_stmt at comptime
2020-09-02 00:09:24 -07:00
Sahnvour
90ace40e07
Merge pull request #5999 from Sahnvour/hashmap
...
New hashmap implementation
2020-09-02 08:52:32 +02:00
Tadeo Kondrak
1b2154dfe2
builtin: Add TypeInfo.StructField.is_comptime
2020-09-02 00:17:59 -04:00
Sahnvour
575fbd5e35
hash_map: rename to ArrayHashMap and add new HashMap implementation
2020-09-02 00:17:50 +02:00
Andrew Kelley
3f7cb14b26
Merge pull request #6225 from ziglang/stage2-comptime
...
stage2: introduce the ability for Scope.Block to be comptime
2020-09-01 15:44:45 -04:00
Andrew Kelley
4c13d020db
stage2: proper split of requireRuntimeBlock and requireFunctionBlock
...
* improve the ZIR generated of variable decls
- utilize the same ZIR for the type and init value when possible
- init value gets a result location with the variable type.
no manual coercion is required.
* no longer use return instructions to extract values out of comptime
blocks. Instead run the analysis and then look at the corresponding
analyzed instruction, relying on the comptime mechanism to report
errors when something could not be comptime evaluated.
2020-09-01 12:39:47 -07:00
pwzk
baa734c42a
Fixing dylib search path
2020-09-01 13:53:12 -04:00
LemonBoy
dd4994a4e4
std: Fix C-string with missing NUL terminator
...
Spotted thanks to the stricter conversion rules.
2020-09-01 18:45:35 +02:00
LemonBoy
c51b871c45
ir: Typecheck the sentinel value in *[N:S1]T to [S2]T casts
...
Closes #6054
2020-09-01 17:29:10 +02:00