Commit Graph

5129 Commits

Author SHA1 Message Date
Yawning Angel
d1e76ee4f2 core/crypto: Add constant-time memory comparison routines
Using a constant-time comparison is required when comparing things like
MACs, password digests, and etc to avoid exposing sensitive data via
trivial timing attacks.

These routines could also live under core:mem, but they are somewhat
specialized, and are likely only useful for cryptographic applications.
2021-11-17 13:59:53 +00:00
gingerBill
9be0d18e5d Correct x in ptr logic 2021-11-17 11:02:11 +00:00
gingerBill
e877525073 Keep -vet happy for -no-crt and wasm targets 2021-11-17 10:40:55 +00:00
gingerBill
f09638318f Add support for darwin to core:c/libc 2021-11-16 21:19:08 +00:00
gingerBill
bb7703fcec Improve ptr_map_hash_key 2021-11-16 16:08:20 +00:00
gingerBill
1b28226a67 Add math.lgamma based off FreeBSD's /usr/src/lib/msun/src/e_lgamma_r.c 2021-11-16 15:32:32 +00:00
gingerBill
2b546a598c Add math.signbit; Add math.gamma based on http://netlib.sandia.gov/cephes/cprob/gamma.c 2021-11-16 15:23:19 +00:00
gingerBill
b530ca9a5e Add math.nextafter 2021-11-16 15:12:01 +00:00
gingerBill
d232796149 Fix typo 2021-11-16 15:09:47 +00:00
gingerBill
e721f26a76 Implement ln based off FreeBSD's /usr/src/lib/msun/src/e_log.c 2021-11-16 15:05:04 +00:00
gingerBill
91408cb21f Implement atanh based on FreeBSD's /usr/src/lib/msun/src/e_atanh.c 2021-11-16 14:58:59 +00:00
gingerBill
eb8b0d7a03 Add log1p, erf, erfc, ilogb logb (implemented based of FreeBSD's) 2021-11-16 14:54:57 +00:00
gingerBill
880af47ae7 Rename math_js.odin to math_basic_js.odin 2021-11-16 14:26:04 +00:00
gingerBill
91949b0992 Implement math.sqrt with intrinsics.sqrt 2021-11-16 14:11:20 +00:00
gingerBill
6a101e69a2 Implement ldexp and frexp in native Odin 2021-11-16 14:04:49 +00:00
gingerBill
1ec0b79345 Allow both -help and --help if passed as init_filename 2021-11-15 22:10:31 +00:00
gingerBill
e814a3693f Improve usage of file_id 2021-11-15 17:26:01 +00:00
gingerBill
f55fc4cd08 Add complex32 and quaternion64 for the 16-bit float types to fmt 2021-11-15 17:25:29 +00:00
gingerBill
f47311f2f6 Remove scope field from Ast 2021-11-14 15:22:40 +00:00
gingerBill
3f038428a7 Begin minimizing Ast size 2021-11-14 15:12:37 +00:00
gingerBill
b9701340b8 Add linalg.matrix4_look_at_from_fru 2021-11-13 19:15:37 +00:00
gingerBill
82110bf487 Merge branch 'master' of https://github.com/odin-lang/Odin 2021-11-13 19:07:27 +00:00
gingerBill
a75dc9d86d Fix minor issue with unmarshal for booleans 2021-11-13 19:07:16 +00:00
gingerBill
bfa23f1352 Merge pull request #1308 from Yawning/fix/amd64-syscalls
src: Fix the syscall intrinsic code generation for Linux and Windows
2021-11-13 18:54:12 +00:00
Yawning Angel
c430a82721 src: Fix the syscall intrinsic code generation for Linux and Windows
The old assembly generated for the syscall intrinsic did not specify
clobber constraints.  This adds RCX and R11 (that are clobbered by
the instruction itself), and memory (that is clobbered by some
system calls) to the assembly constraints.

Note: This is still incorrect on FreeBSD, which clobbers more registers
and uses the carry flag instead of -errno in rax to indicate an error.
2021-11-13 09:53:20 +00:00
Jeroen van Rijn
cc316a473e Merge pull request #1299 from Kelimion/vendor-glfw-test
[vendor:glfw] Add test.
2021-11-10 19:24:55 +01:00
Jeroen van Rijn
c213274607 [vendor:glfw] Add test. 2021-11-10 19:15:10 +01:00
Jeroen van Rijn
c4a2580dfd Merge pull request #1290 from wjlroe/fix-glfw-on-windows
Fix path to static GLFW lib on Windows
2021-11-10 18:41:30 +01:00
Jeroen van Rijn
8a547b5922 Merge pull request #1298 from CarwynNelson/ws32-add-socket
Add socket() function to windows ws32 bindings
2021-11-10 17:23:59 +01:00
Carwyn Nelson
c67c0789eb Add socket() function to windows ws32 bindings
It looks like this was missing from the winsock bindings. Odin contains
WSASocketW which I assume would also work for obtaining a socket, but
socket() is distinct and is what I was using, so I assume others will
want it too.
2021-11-10 15:55:50 +00:00
Jeroen van Rijn
cefe312ba1 Merge pull request #1297 from CarwynNelson/patch-1
Fix the windows binding for getaddrinfo
2021-11-10 16:22:56 +01:00
Carwyn Nelson
d8b1523161 Fix the windows binding for getaddrinfo
getaddrinfo should take a double pointer to ADDRINFOA instead of a single pointer. If you call the binding in its current state you will not get back a valid ADDRINFOA struct.

I have also changed the `node` and `service` params to be cstring to avoid having to do `transmute(u8) value`.
2021-11-10 15:15:40 +00:00
Jeroen van Rijn
989ddbd688 Merge pull request #1295 from zhibog/master
Add tests to Linux and Mac and add vendor tests
2021-11-10 15:34:29 +01:00
zhibog
96b670af49 Fix package name again 2021-11-10 15:31:29 +01:00
zhibog
359e02bad7 Fix botan lib name for apt 2021-11-10 15:26:26 +01:00
zhibog
8aadcacc0b Add tests to Linux and Mac and add vendor tests 2021-11-10 15:22:12 +01:00
Jeroen van Rijn
615efc7c86 Merge pull request #1294 from Kelimion/fix_dir_walk
Fix os.walk for UNC paths.
2021-11-10 15:09:22 +01:00
Jeroen van Rijn
dd88104a81 Fix os.walk for UNC paths. 2021-11-10 14:59:54 +01:00
gingerBill
5cb23725ae Merge pull request #1289 from Kelimion/timings-export
Add functionality to export build timings.
2021-11-10 12:06:36 +00:00
Jeroen van Rijn
8c5c45a04c [timings-export] Style fixes. 2021-11-10 12:23:46 +01:00
gingerBill
4a552e6326 Merge pull request #1286 from DanielGavin/parser-fix
Add Any_Int as allowed flag in field signatures.
2021-11-10 10:59:53 +00:00
gingerBill
1f0758708f Merge pull request #1293 from kevinsjoberg/fix-test-filtering
Postpone checking test procedures
2021-11-10 10:52:01 +00:00
Kevin Sjöberg
b8dec4268d Postpone checking test procedures
The dependency set need to be generated before we check the testing
procedures. Otherwise `checker->info.testing_procedures` will be empty
and thus no filtering is taking place.
2021-11-10 10:26:17 +01:00
gingerBill
fc920a630f Merge pull request #1288 from odin-lang/target-js_wasm32
Target `js_wasm32` with `vendor:wasm/WebGL`
2021-11-09 23:15:42 +00:00
Jeroen van Rijn
ffeac8895d Merge pull request #1291 from zhibog/master
Add Botan crypto lib as a vendor library
2021-11-09 23:59:14 +01:00
zhibog
cef9632607 Add Botan crypto lib as a vendor library 2021-11-09 23:49:17 +01:00
gingerBill
76054dddb7 Revert build.bat 2021-11-09 22:11:18 +00:00
Jeroen van Rijn
9dc8753a14 [timings-export] Improve help messages
Also make `clang` happy as concerns the build settings switch/case.
2021-11-09 22:52:26 +01:00
William Roe
a805d9a721 Fix path to static GLFW lib on Windows 2021-11-09 20:10:34 +00:00
Jeroen van Rijn
6c306f7633 Fix Linux warnings. 2021-11-09 20:31:22 +01:00