Chris Robinson
0b250b246d
Use a standard pointer-sized integer type
2014-09-04 23:23:48 -07:00
François Cami
3c13e1e333
Update COPYING to the latest https://www.gnu.org/licenses/old-licenses/lgpl-2.0.txt to fix the FSF' address Fix the FSF' address in the source
2014-08-18 11:34:29 -07:00
Chris Robinson
ba3f1e7468
Assume SSE is available if building with support and no run-time checking
2014-08-11 14:45:28 -07:00
Chris Robinson
74c8de6372
Try the __cpuid intrinsic if GCC's __get_cpuid isn't available
2014-08-11 14:19:15 -07:00
Chris Robinson
e3ee534c39
Check for GCC's __get_cpuid before using it
2014-08-11 13:38:43 -07:00
Chris Robinson
a3c236598a
Simplify some vector size range checks
2014-08-10 10:52:08 -07:00
Chris Robinson
936a79da7d
Give NULL for null-vector iterators
2014-08-10 09:12:08 -07:00
Chris Robinson
94013216b6
Pass pointer-to-vector types as char* instead of void*
...
C aliasing rules only allow char* to alias an otherwise-incompatible type,
rather than void*.
2014-08-10 08:46:55 -07:00
Chris Robinson
7b41ed7ec4
Check the current directory first for data files
2014-07-21 04:42:45 -07:00
Chris Robinson
d0a64fe191
Don't require pre-declaring vector types
2014-07-06 03:27:39 -07:00
Chris Robinson
d0fac3fe1d
Don't try to set fp precision with __control87_2 or _controlfp
2014-06-08 23:39:52 -07:00
Chris Robinson
c07fb7b45c
Print CPU extensions that are unavailable but requested
2014-06-08 06:31:36 -07:00
Timothy Arceri
fc0be88c0f
Add SSE2 and SSE4.1 linear resamplers
...
Currently the only way SSE 4.1 is detected is by using __get_cpuid, i.e. with
GCC. Windows' IsProcessorFeaturePresent does not report SSE4.1 capabilities.
2014-06-06 07:15:00 -07:00
Chris Robinson
a48f5d26fd
Ensure a proper amount of new elements are being reserved when inserting
2014-05-22 12:16:22 -07:00
Chris Robinson
a2bddb7b40
Move RWLock and UIntMap implementations to common
...
This should make the code in common completely self-reliant.
2014-05-07 19:16:49 -07:00
Chris Robinson
d8d609b940
Use standard types for the RWLock
2014-05-07 01:03:06 -07:00
Chris Robinson
1aff37114a
Move atomic method definitions to a separate common source
2014-05-06 19:07:40 -07:00
Chris Robinson
804b08e0ca
Use ALboolean for al_string_empty's return type
2014-04-30 12:53:52 -07:00
Chris Robinson
6c8bf9ec42
Rename althread_once to be more C11-like
2014-04-17 21:39:51 -07:00
Chris Robinson
20e5ec18e1
Handle the lib name as UTF-8
2014-04-17 21:17:48 -07:00
Chris Robinson
d1f1a1d056
Make and use a C11-like altimespec_get wrapper function
2014-04-17 09:03:57 -07:00
Chris Robinson
c3b1c31d9b
Rename althread_key_ wrappers to altss_ and move it to threads.h/c
2014-04-17 00:11:12 -07:00
Chris Robinson
b020dd13fd
Avoid using a Sleep() wrapper
2014-04-16 06:59:44 -07:00
Chris Robinson
184cf30cf7
Use althrd_yield instead of alsched_yield
2014-04-16 06:18:24 -07:00
Chris Robinson
505ef82246
Move the threads and mutex wrappers to threads.c
2014-04-16 05:40:40 -07:00
Chris Robinson
e8517d8600
Fix Windows' almtx_timedlock
2014-04-16 05:32:55 -07:00
Chris Robinson
18ab9cbbdd
Implement a C11-like thread wrapper and use it in mmdevapi and pulseaudio
2014-04-16 05:19:34 -07:00
Chris Robinson
29cb5058c0
Use a C11-like mutex wrapper instead of CRITICAL_SECTIONs
2014-04-16 01:39:11 -07:00
Chris Robinson
e0d24f9da4
Use a helper to detect a path slash on Windows
2014-04-13 21:44:13 -07:00
Chris Robinson
e615ea3cf9
Use VECTOR_INSERT to copy and append strings
2014-04-13 20:54:12 -07:00
Chris Robinson
0ef87227c1
Pass in the vector insertion point as a pointer
2014-04-13 18:42:41 -07:00
Chris Robinson
cce9609b9e
Avoid referencing the start iterator twice for vector insertion
2014-04-13 17:06:18 -07:00
Chris Robinson
90ae4b7c0f
Add a VECTOR_INSERT method to insert a range of elements at once
2014-04-09 22:50:28 -07:00
Chris Robinson
add3013234
Fix the default XDG_DATA_DIRS paths
2014-04-07 13:24:51 -07:00
Chris Robinson
569374da2c
Properly compare al_strings
2014-04-03 13:46:09 -07:00
Chris Robinson
482fb37b68
Recognize NULL as an empty vector/string
2014-04-03 11:13:12 -07:00
Chris Robinson
570eb4e1a7
Don't pass the vector's capacity as a parameter to vector_reserve
2014-03-31 06:13:56 -07:00
Chris Robinson
7570195b09
strlen returns size_t
2014-03-28 08:19:45 -07:00
Chris Robinson
d997be67fd
Use al_string to handle mmdevapi and dsound device names
2014-03-28 07:59:47 -07:00
Chris Robinson
af8fda8a4a
Add an al_string type and use it for the device lists
2014-03-28 05:44:19 -07:00
Chris Robinson
2ca673cca2
Properly handle special folder names with extended characters
2014-03-28 01:21:05 -07:00
Chris Robinson
20886059fd
Wrap fopen calls under Windows
...
The idea is that all filenames we deal with are encoded as UTF-8, but the
Windows functions that take a char string interpret it using the ANSI codepage.
So instead, we convert the UTF-8 string to a wchar string, and then use the
wchar functions for proper extended character filename support.
2014-03-28 00:37:42 -07:00
Chris Robinson
83038c0dab
Add some integer casts, and a range check
2014-03-23 15:22:37 -07:00
Chris Robinson
8c33b4d742
Increase the vector reserve as needed when pushing in new items
2014-03-21 16:35:38 -07:00
Chris Robinson
983fa4630a
Rename the vector's Max field to Capacity
2014-03-21 14:03:26 -07:00
Chris Robinson
ff63188cc2
Add a generic vector interface and use it for the active effect slots
2014-03-21 01:23:01 -07:00
Chris Robinson
308d87b12a
Return the original value from CompExchange*
2014-03-09 03:49:40 -07:00
Chris Robinson
ea8a85b19c
Move PATH_MAX fallback definitions to alMain.h
2014-02-27 18:17:20 -08:00
Chris Robinson
a8249c3469
Move OpenDataFile to helpers.c so other sources can use it
2014-02-27 01:49:23 -08:00
Chris Robinson
748be9a97d
Include sys/sysconf.h if available for sysconf()
2014-01-18 19:16:46 -08:00