Jordan Petridis [Wed, 29 Jul 2020 11:59:00 +0000 (11:59 +0000)]
ci: mark the msys job as manual and allowed to fail
the msys setup is not deterministic due to issues with msys installation,
so it keeps breaking every now and then.
Part-of: <https://gitlab.freedesktop.org/gstreamer/orc/-/merge_requests/48>
Seungha Yang [Tue, 28 Jul 2020 09:00:09 +0000 (18:00 +0900)]
orc: Use page size aligned memory block for Windows
VirtualProtect will change protection attribute of all memory range
which belong to the same page range.
Part-of: <https://gitlab.freedesktop.org/gstreamer/orc/-/merge_requests/48>
Seungha Yang [Tue, 28 Jul 2020 09:00:38 +0000 (18:00 +0900)]
orc: Remove trailing white spaces
Part-of: <https://gitlab.freedesktop.org/gstreamer/orc/-/merge_requests/48>
Tim-Philipp Müller [Mon, 20 Jul 2020 23:19:13 +0000 (00:19 +0100)]
ci: add basic macOS CI
Part-of: <https://gitlab.freedesktop.org/gstreamer/orc/-/merge_requests/46>
Tim-Philipp Müller [Tue, 21 Jul 2020 09:20:03 +0000 (10:20 +0100)]
meson: use / instead of join_paths() for readability
Tim-Philipp Müller [Tue, 21 Jul 2020 00:19:01 +0000 (01:19 +0100)]
ci: run benchmark tests as well
Tim-Philipp Müller [Tue, 21 Jul 2020 00:16:47 +0000 (01:16 +0100)]
meson: hook up benchmark as benchmark
Tim-Philipp Müller [Mon, 20 Jul 2020 23:48:48 +0000 (00:48 +0100)]
benchmorc: fix file path to test orc file on windows
Fix compiler warning on msys2:
enchmorc.c:35:31: error: unknown escape sequence: '\o'
The absolute path returned by current_source_dir()
returns backward slashes, which don't work well when
used as a C string constant. join_paths() will make
it all forward-slashes.
Tim-Philipp Müller [Sat, 4 Jul 2020 10:49:09 +0000 (11:49 +0100)]
orcc: use #pragma once in generated headers
Simplifies code and removes build path fragments from
generated file (paths may be different if generated
in a gst-build setup).
There shouldn't be any portability issues with this. Meson
has been using this in its generated config.h for years.
Part-of: <https://gitlab.freedesktop.org/gstreamer/orc/-/merge_requests/45>
Nirbheek Chauhan [Thu, 2 Jul 2020 09:32:57 +0000 (15:02 +0530)]
orc: Don't set memory protection if there's no code
If the size of the JIT code is 0, there's no code and the *mem is
uninitialized. This can happen when orcc.exe is used to generate
backup C code.
Part-of: <https://gitlab.freedesktop.org/gstreamer/orc/-/merge_requests/44>
Nirbheek Chauhan [Thu, 2 Jul 2020 09:32:12 +0000 (15:02 +0530)]
orc: Print hex value directly instead of a constant
This is actually more useful because the constants are all bitfields
and it's fairly straightforward to look it up:
https://docs.microsoft.com/en-us/windows/win32/memory/memory-protection-constants
Part-of: <https://gitlab.freedesktop.org/gstreamer/orc/-/merge_requests/44>
Nirbheek Chauhan [Thu, 2 Jul 2020 09:31:40 +0000 (15:01 +0530)]
orc: Fix indentation
Only whitespace changes.
Part-of: <https://gitlab.freedesktop.org/gstreamer/orc/-/merge_requests/44>
Nirbheek Chauhan [Tue, 30 Jun 2020 11:14:59 +0000 (16:44 +0530)]
ci: Attempt to fix broken Windows CI
https://gitlab.freedesktop.org/nirbheek/orc/-/pipelines/169274
Update to latest image and use the gstreamer runner tag. Matches the
gst-ci template.
Also try to make MSYS2 CI more resilient by following:
https://github.com/msys2/setup-msys2/blob/master/main.js#L98
Part-of: <https://gitlab.freedesktop.org/gstreamer/orc/-/merge_requests/42>
Nirbheek Chauhan [Tue, 30 Jun 2020 11:42:54 +0000 (17:12 +0530)]
orc: Fix some warnings on MSVC and enable --werror
Part-of: <https://gitlab.freedesktop.org/gstreamer/orc/-/merge_requests/42>
Nirbheek Chauhan [Tue, 30 Jun 2020 10:46:39 +0000 (16:16 +0530)]
orccodemem: Add support for Universal Windows Platform apps
VirtualAlloc is VirtualAllocFromApp when targeting UWP, and you can
only allocate executable pages if you have the codeGeneration
capability set in the app manifest. Check for that capability in
_orc_compiler_init() and switch to backup code or emulation if it
isn't available instead of crashing when VirtualAllocFromApp
returns NULL.
Also you cannot allocate pages that are both READWRITE and EXECUTE, so
we allocate as read-write first, then set the memory as execute-only
after the code has been compiled and copied over.
Part-of: <https://gitlab.freedesktop.org/gstreamer/orc/-/merge_requests/42>
Nirbheek Chauhan [Tue, 30 Jun 2020 10:00:35 +0000 (15:30 +0530)]
orc: Implement a windows helper for getenv()
On Windows, getenv() is deprecated and does not work in all cases. On
the Universal Windows Platform (UWP) it always returns NULL. Add
a wrapper orc_getenv() that calls GetEnvironmentVariable on Windows.
Also change semantics to always make a copy before returning.
Part-of: <https://gitlab.freedesktop.org/gstreamer/orc/-/merge_requests/42>
Tim-Philipp Müller [Fri, 13 Mar 2020 12:29:12 +0000 (12:29 +0000)]
meson: improve summary() printout
Pass bool_yn kwarg to summary() to make it
print boolean arguments as nice coloured YES/NO
instead of true/false.
We can also pass multiple arguments like a bool
and a disabled_reason string. In meson 0.54 these
can be printed on one line if we set the line_sep
kwarg. In meson 0.53 these will always be printed
on two lines (and it will warn about the line_sep
arg), so only pass two args if docs are disabled
and otherwise just pass one arg, so we don't end
up with an ugly empty line with meson 0.53.
Tim-Philipp Müller [Fri, 7 Feb 2020 15:53:29 +0000 (15:53 +0000)]
meson: add summary() if Meson version is new enough
Tim-Philipp Müller [Sat, 8 Feb 2020 00:17:22 +0000 (00:17 +0000)]
ci: update windows runner tag and image
Sebastian Dröge [Sat, 2 Nov 2019 09:24:17 +0000 (10:24 +0100)]
Release 0.4.31
Doug Nazar [Fri, 20 Sep 2019 08:56:35 +0000 (04:56 -0400)]
neon: Enable Flush-to-zero mode for float programs
Some of the instructions are not NEON (which always uses FTZ),
but are actually VFP, which requires enabling FTZ mode.
Doug Nazar [Fri, 20 Sep 2019 08:51:42 +0000 (04:51 -0400)]
powerpc: Fix a few opcodes to support x2/x4 usage
Doug Nazar [Sat, 14 Sep 2019 01:07:35 +0000 (21:07 -0400)]
powerpc: Fix a few rules to handle multiple vector elements
Doug Nazar [Sat, 14 Sep 2019 00:53:50 +0000 (20:53 -0400)]
powerpc: Add manual denormalize support for vsx instructions
The VSX vector instructions don't support automatically treating source
denormalized FP numbers as 0 or converting the denormalized results
to zero.
Doug Nazar [Sat, 14 Sep 2019 00:24:28 +0000 (20:24 -0400)]
testsuite: Reduce memcpy_speed loops
Even with the PowerPC copy improvements we still exceed the 30s
time limit.
Power8 has an 8MB L3 cache, resulting in a total copy of ~9GB.
Before PowerPC copy: ~48s
After PowerPC copy: ~38s
now: ~18s
Doug Nazar [Sat, 14 Sep 2019 00:17:47 +0000 (20:17 -0400)]
powerpc: Add custom handling of copy programs
Provides ~20x speedup for fulling aligned buffers, although still
slower than builtin memcpy.
Doug Nazar [Fri, 13 Sep 2019 23:52:58 +0000 (19:52 -0400)]
powerpc: Move load/store align helpers to common file
Doug Nazar [Fri, 13 Sep 2019 23:42:58 +0000 (19:42 -0400)]
powerpc: Improve constant handling
Some of the constants are used by the invariants so add them to
the precheck and then load constants first.
Doug Nazar [Fri, 13 Sep 2019 23:32:24 +0000 (19:32 -0400)]
powerpc: Fix register order of a few emit helpers
Two emit helpers had their parameters in the wrong location in
the generated opcode. Hasn't mattered because they were using
the same register for source & dest.
Constant flags are now at the end, so the label should be marked
forward, not backward.
Doug Nazar [Fri, 13 Sep 2019 23:22:04 +0000 (19:22 -0400)]
testsuite: Return error from exec_parse if a program fails
Doug Nazar [Fri, 13 Sep 2019 23:15:47 +0000 (19:15 -0400)]
orctest: Fix parentheses location in ULP test
Pablo Marcos Oltra [Tue, 10 Sep 2019 15:36:51 +0000 (17:36 +0200)]
Fix OrcTargetPowerPCFlags enum typedef
Sebastian Dröge [Mon, 9 Sep 2019 07:27:32 +0000 (10:27 +0300)]
Back to development
Sebastian Dröge [Mon, 9 Sep 2019 07:21:29 +0000 (10:21 +0300)]
Release 0.4.30
Doug Nazar [Wed, 28 Aug 2019 14:30:12 +0000 (10:30 -0400)]
powerpc: Use extended mnemonic for load immediate
Doug Nazar [Wed, 28 Aug 2019 14:28:39 +0000 (10:28 -0400)]
powerpc: Add double & quad operands for vsx/v2.07 compatible cpus
Doug Nazar [Wed, 28 Aug 2019 14:23:31 +0000 (10:23 -0400)]
powerpc: Fix cpu feature detection
Fix meson cpu family detection.
Actually call cpu detection from progam init.
Add VSX & v2.07 checks for linux with options to diable.
Add display of target flags & cache sizes.
Tim-Philipp Müller [Fri, 19 Apr 2019 23:22:51 +0000 (00:22 +0100)]
Drop support for Autotools as build system
Doug Nazar [Wed, 28 Aug 2019 14:05:21 +0000 (10:05 -0400)]
tests: Allow exec testing of single opcode
Doug Nazar [Wed, 28 Aug 2019 14:00:33 +0000 (10:00 -0400)]
tests: Use correct double/int64 functions for parameters & consts
Doug Nazar [Wed, 28 Aug 2019 13:55:26 +0000 (09:55 -0400)]
executor: x2 union members not endian safe
Doug Nazar [Sun, 25 Aug 2019 19:50:15 +0000 (15:50 -0400)]
powerpc: Pre-load long constants & invariants
PowerPC doesn't have an easy way to load a long constant into a
vector register so we emit the value into the code and then load it.
This moves those values to after the epilogue and then loads them
before starting the outer loop.
Doug Nazar [Sun, 25 Aug 2019 19:41:59 +0000 (15:41 -0400)]
orc: Consolidate orc_program_has_float()
Doug Nazar [Sun, 25 Aug 2019 18:50:11 +0000 (14:50 -0400)]
orc: Make orc_*_emit_invariants() generic
Move mmx/sse emit invariant function to orcompiler so it can
be used on other architectures.
Doug Nazar [Sun, 25 Aug 2019 18:27:23 +0000 (14:27 -0400)]
orccodemem: Mark exec mapping writable if debugging
gdb needs the mapping to be writable to set breakpoints.
Doug Nazar [Sat, 31 Aug 2019 15:08:58 +0000 (11:08 -0400)]
orctest: Fix ULP compare and make compatible with clang
Matthew Waters [Tue, 27 Aug 2019 01:36:49 +0000 (11:36 +1000)]
build: fix werror build with clang
../subprojects/orc/orc-test/orcarray.c:230:47: error: taking the absolute value of unsigned type 'unsigned int' has no effect [-Werror,-Wabsolute-value]
if ((a[i] < 0.0) == (b[i] < 0.0) && abs(*(orc_uint32 *)&a[i] - *(orc_uint32 *)&b[i]) <= 2) continue;
^
../subprojects/orc/orc-test/orcarray.c:230:47: note: remove the call to 'abs' since unsigned values cannot be negative
if ((a[i] < 0.0) == (b[i] < 0.0) && abs(*(orc_uint32 *)&a[i] - *(orc_uint32 *)&b[i]) <= 2) continue;
^~~
../subprojects/orc/orc-test/orcarray.c:247:47: error: taking the absolute value of unsigned type 'unsigned long' has no effect [-Werror,-Wabsolute-value]
if ((a[i] < 0.0) == (b[i] < 0.0) && abs(*(orc_uint64 *)&a[i] - *(orc_uint64 *)&b[i]) <= 2) continue;
^
../subprojects/orc/orc-test/orcarray.c:247:47: note: remove the call to 'abs' since unsigned values cannot be negative
if ((a[i] < 0.0) == (b[i] < 0.0) && abs(*(orc_uint64 *)&a[i] - *(orc_uint64 *)&b[i]) <= 2) continue;
^~~
../subprojects/orc/orc-test/orctest.c:525:63: error: taking the absolute value of unsigned type 'unsigned int' has no effect [-Werror,-Wabsolute-value]
if ((*(float *)ptr1 < 0.0) == (*(float *)ptr2 < 0.0) && abs(*(orc_uint32 *)ptr1 - *(orc_uint32 *)ptr2) <= 2) return TRUE;
^
../subprojects/orc/orc-test/orctest.c:525:63: note: remove the call to 'abs' since unsigned values cannot be negative
if ((*(float *)ptr1 < 0.0) == (*(float *)ptr2 < 0.0) && abs(*(orc_uint32 *)ptr1 - *(orc_uint32 *)ptr2) <= 2) return TRUE;
^~~
../subprojects/orc/orc-test/orctest.c:530:65: error: taking the absolute value of unsigned type 'unsigned long' has no effect [-Werror,-Wabsolute-value]
if ((*(double *)ptr1 < 0.0) == (*(double *)ptr2 < 0.0) && abs(*(orc_uint64 *)ptr1 - *(orc_uint64 *)ptr2) <= 2) return TRUE;
^
../subprojects/orc/orc-test/orctest.c:530:65: note: remove the call to 'abs' since unsigned values cannot be negative
if ((*(double *)ptr1 < 0.0) == (*(double *)ptr2 < 0.0) && abs(*(orc_uint64 *)ptr1 - *(orc_uint64 *)ptr2) <= 2) return TRUE;
^~~
Doug Nazar [Tue, 20 Aug 2019 08:50:56 +0000 (04:50 -0400)]
powerpc: Add little endian support
Doug Nazar [Tue, 20 Aug 2019 08:38:39 +0000 (04:38 -0400)]
powerpc: Fix whitespace
Doug Nazar [Sun, 18 Aug 2019 15:50:44 +0000 (11:50 -0400)]
orc: Add ORC_LIKELY/ORC_UNLIKELY macros
Doug Nazar [Sun, 18 Aug 2019 15:48:10 +0000 (11:48 -0400)]
meson: Fix ppc/ppc64 cpu family detection
Doug Nazar [Sun, 18 Aug 2019 15:47:06 +0000 (11:47 -0400)]
orctest: print_array_val_float return value not used
fanjinke [Tue, 7 May 2019 15:48:37 +0000 (23:48 +0800)]
add Hygon Dhyana processor support
Signed-off-by: fanjinke <fanjinke@hygon.cn>
Doug Nazar [Tue, 13 Aug 2019 19:38:55 +0000 (15:38 -0400)]
tests: Use float constants and parameters when testing float opcodes.
Doug Nazar [Wed, 7 Aug 2019 01:44:02 +0000 (21:44 -0400)]
orcarm: Fix flushing of icache when using dual map
On a codemem_dual_map setup, we need to also flush the PROT_EXEC alias.
Doug Nazar [Wed, 7 Aug 2019 04:11:35 +0000 (00:11 -0400)]
orctest: Switch nearby float comparison to ULP method
Mathieu Duponchelle [Fri, 2 Aug 2019 16:41:52 +0000 (18:41 +0200)]
doc: fix gtkdoc when orc is used as a subproject
meson.source_root() will point to the root of the top level
project, and should not be used to compute paths in the current
project.
Wim Taymans [Fri, 19 Jul 2019 14:18:04 +0000 (16:18 +0200)]
x86: add endbr32 and endbr64 instructions
Issue endbr instructions at the start of generated functions to
make IBT (indirect branch tracking) work.
Resolves #17
Tim-Philipp Müller [Tue, 23 Jul 2019 23:26:32 +0000 (00:26 +0100)]
ci: run tests on windows
Jordan Petridis [Thu, 11 Jul 2019 04:48:08 +0000 (07:48 +0300)]
Add Windows CI for msvc 2017 and msys2
Currently the container is based upon a windows 1607 image
and requires a runner with a server/hyper-v 1607 host
to be able to execute.
There are plan on moving the runner to a 1807 later.
Nirbheek Chauhan [Tue, 7 May 2019 14:48:34 +0000 (20:18 +0530)]
uwp: workaround a false positive in certification of orc
It seems that the Windows App Certification Kit searches all files and
binaries for the regex '\<reg\>' (or something like it) and throws
errors if it exists. Supposedly this is for preventing apps from
running REG.EXE
https://blogs.msdn.microsoft.com/appconsult/2017/08/16/how-to-validate-if-your-application-is-compliant-with-the-windows-store-polices-windows-10-and-windows-10-s/
Xavier Claessens [Fri, 12 Apr 2019 15:34:33 +0000 (11:34 -0400)]
Meson: Do not always generate static library
Since Meson 0.46.0 'default_library' can be set to 'both' when user
wants both shared and static libraries.
Tim-Philipp Müller [Mon, 15 Apr 2019 08:27:24 +0000 (09:27 +0100)]
Back to development
Tim-Philipp Müller [Sun, 14 Apr 2019 22:47:03 +0000 (23:47 +0100)]
Release 0.4.29
Tim-Philipp Müller [Fri, 22 Mar 2019 19:36:24 +0000 (19:36 +0000)]
orc: fix C++ style comment
Tim-Philipp Müller [Tue, 5 Mar 2019 14:21:04 +0000 (14:21 +0000)]
configure.ac: no more bugzilla
Tim-Philipp Müller [Tue, 5 Mar 2019 13:52:54 +0000 (13:52 +0000)]
Update news file for upcoming release
Tim-Philipp Müller [Tue, 5 Mar 2019 11:05:43 +0000 (11:05 +0000)]
Add pkg-config file for orc-test library
Fixes #16
Nirbheek Chauhan [Tue, 5 Feb 2019 13:29:11 +0000 (18:59 +0530)]
Fix warnings with Cerbero's mingw (gcc 4.7)
orcutils.h:59:38: error: "__STDC_VERSION__" is not defined [-Werror=undef]
Seungha Yang [Mon, 28 Jan 2019 13:12:46 +0000 (22:12 +0900)]
meson: Make orcc detectable from other subprojects
If we are a subproject (e.g., gst-build), this can make it possible
to use orcc by other subprojects.
A. Wilcox [Tue, 10 Jul 2018 02:18:07 +0000 (21:18 -0500)]
PowerPC: Support ELFv2 ABI
The ELFv2 ABI does not use function descriptors. This change has been
tested on Power Mac G5, IBM POWER6, and Raptor Talos II, all using the
musl libc on Linux kernel 4.14.
Michel Normand [Mon, 2 Mar 2015 11:14:03 +0000 (12:14 +0100)]
Add support for ppc64le
Fixes https://gitlab.freedesktop.org/gstreamer/orc/issues/6
Tim-Philipp Müller [Wed, 2 Jan 2019 00:47:42 +0000 (00:47 +0000)]
ci: add minimal ci
Edward Hervey [Mon, 17 Dec 2018 10:26:21 +0000 (11:26 +0100)]
orc: Remove dead assignments
All those temporary registry were not used and instead were being
assigned constant values.
Nirbheek Chauhan [Wed, 14 Nov 2018 09:49:42 +0000 (15:19 +0530)]
meson: Maintain macOS ABI compatibility
Need to use the correct dylib versioning.
Tim-Philipp Müller [Sat, 6 Oct 2018 12:04:01 +0000 (13:04 +0100)]
meson: add option to disable orc-test library
https://bugzilla.gnome.org/show_bug.cgi?id=736785
Tim-Philipp Müller [Wed, 3 Oct 2018 09:31:47 +0000 (10:31 +0100)]
meson: rename "enable-backend" option to "orc-backend"
More consistent with the Meson option naming conventions.
Tim-Philipp Müller [Wed, 3 Oct 2018 08:28:53 +0000 (09:28 +0100)]
meson: add options to disable benchmarks, examples, tools
Like we have in other modules.
Tim-Philipp Müller [Wed, 3 Oct 2018 08:13:31 +0000 (09:13 +0100)]
meson: make "tests" option an auto feature option
Consistent with the rest of GStreamer and gst-build.
Tim-Philipp Müller [Mon, 30 Jul 2018 09:06:04 +0000 (10:06 +0100)]
meson: rename 'disable_gtkdoc' option to 'gtk_doc' and make it an auto/feature option
Tim-Philipp Müller [Mon, 30 Jul 2018 08:56:14 +0000 (09:56 +0100)]
meson: rename option disable_tests=false -> tests=true
Bring it in line with convention.
Nicolas Dufresne [Sun, 22 Jul 2018 13:53:39 +0000 (09:53 -0400)]
meson: Bump required version to 0.46
Christoph Reiter [Mon, 21 May 2018 15:06:12 +0000 (17:06 +0200)]
meson: pass the right header when testing for posix_memalign
has_function() needs to know the header to correctly detect the function in
all cases.
This fixes the build under mingw-w64 where posix_memalign was wrongfully being
detected as available.
See this glib bug for a similar fix:
https://bugzilla.gnome.org/show_bug.cgi?id=795876
https://bugzilla.gnome.org/show_bug.cgi?id=796309
Tim-Philipp Müller [Fri, 18 May 2018 08:49:01 +0000 (09:49 +0100)]
Fix MSVC compiler warning
The isnan() macro was redefined to _isnan() on MSVC, but it's
been in math.h since vs2013, so it should be safe to rely on
it unconditionally nowadays, and we have no intention of
supporting ancient vs versions anyway.
Tim-Philipp Müller [Fri, 18 May 2018 08:10:17 +0000 (09:10 +0100)]
orc: fix static build on windows
Orc users mustn't use __declspec(dllimport) when
linking against a static liborc.
Edward Hervey [Fri, 4 May 2018 07:21:16 +0000 (09:21 +0200)]
orctest: Allow enough room for sprintf()
We were writing more than 300 characters in some cases. Thanks gcc
8 for pointing that out :)
Tim-Philipp Müller [Sat, 28 Apr 2018 22:48:39 +0000 (23:48 +0100)]
meson: use add_project_arguments() instead of add_global_arguments()
The latter won't play nice when being used as a subproject.
Tim-Philipp Müller [Sat, 28 Apr 2018 12:06:34 +0000 (13:06 +0100)]
orc: update some generated files
Tim-Philipp Müller [Sat, 28 Apr 2018 12:04:11 +0000 (13:04 +0100)]
orcfunctions.h: include orcutils.h for ORC_API define
Fixes build for users that just include orcfunctions.h
directly instead of orc/orc.h, like libs in gst-plugins-base.
Tim-Philipp Müller [Sat, 28 Apr 2018 00:10:59 +0000 (01:10 +0100)]
orc: remove empty and unused orcrules-x86.c
Tim-Philipp Müller [Fri, 27 Apr 2018 23:37:35 +0000 (00:37 +0100)]
orc: move unusable orc_code_chunk_free() declaration to internal header
Nothing in any public header ever returned or used an OrcCodeChunk.
Tim-Philipp Müller [Fri, 27 Apr 2018 17:42:29 +0000 (18:42 +0100)]
autotools: control symbol visibility via -fvisibility
All symbols are hidden by default unless exported
explicitly via our public API decorators.
Tim-Philipp Müller [Fri, 27 Apr 2018 16:45:23 +0000 (17:45 +0100)]
meson: fix symbol export with MSVC and use -fvisibility elsewhere
Use newly-added ORC_API decorators to export symbols explicitly.
Get rid of orc.map file and the ORC_EXPORT stuff that never did
anything anyway (define was unused).
Tim-Philipp Müller [Fri, 27 Apr 2018 15:56:11 +0000 (16:56 +0100)]
orc: decorate public symbols with ORC_API
We'll use that later to control symbol visibility and
exported symbols.
Tim-Philipp Müller [Fri, 27 Apr 2018 13:00:54 +0000 (14:00 +0100)]
orc-test: decorate public symbols with ORC_TEST_API
We'll use that later to control symbol visibility and
exported symbols.
Tim-Philipp Müller [Fri, 27 Apr 2018 16:02:18 +0000 (17:02 +0100)]
orcc: add --decorator command line argument
So we can add things like FOO_API if the functions are
supposed to be public, for example.
Tim-Philipp Müller [Fri, 27 Apr 2018 11:47:42 +0000 (12:47 +0100)]
meson: use -Bsymbolic-functions when linking if available
cc.has_linker_argument() requires Meson 0.46, so guard
against older Meson versions for now.
Tim-Philipp Müller [Fri, 27 Apr 2018 23:06:03 +0000 (00:06 +0100)]
orc: make more functions static
All of these are only used internally and are
not in any header files, but were still exported
by accident because they start with orc_*.
Tim-Philipp Müller [Fri, 20 Apr 2018 11:34:17 +0000 (12:34 +0100)]
gtk-doc: get rid of templates
gtkdoc-mktmpl was removed in recent gtk-doc versions.
Update gtk-doc.make to 1.27, but modify to generate
xml/version.entities (i.e. add copy in right dir).
All a bit cargo-culted, but seems to work.
James Cowgill [Fri, 6 Apr 2018 14:26:43 +0000 (15:26 +0100)]
orcmips: only enable if the DSPr2 ASE is present
The mips target uses various instructions that a part of the MIPS DSPr2
ASE which is not present on all processors. The easiest solution is to
gate the target on the presense of DSPr2 at runtime.
Unfortunately there isn't a "nice" way to detect if DSPr2 is present, so
resort to parsing /proc/cpuinfo to get the information.
https://bugzilla.gnome.org/show_bug.cgi?id=760834