aboutsummaryrefslogtreecommitdiff
path: root/platform/linux-generic/arch/aarch64/odp_atomic.h
AgeCommit message (Collapse)Author
2022-03-08linux-gen: use _odp_u128_t instead of __int128Jere Leppänen
Replace usage of __int128 and __int128_t with _odp_u128_t. Signed-off-by: Jere Leppänen <jere.leppanen@nokia.com> Reviewed-by: Matias Elo <matias.elo@nokia.com>
2022-03-08linux-gen: use new 128-bit integer typeJere Leppänen
Use _odp_u128_t instead of various ad hoc typedefs. Signed-off-by: Jere Leppänen <jere.leppanen@nokia.com> Reviewed-by: Matias Elo <matias.elo@nokia.com>
2021-10-21linux-gen: fix unsupported types build errorsMatias Elo
Fix "ISO C does not support '__int128' types" errors when building with 'pedantic' option. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com>
2021-03-29linux-gen: bitset: move aarch64 specific code to arch filesMalvika Gupta
On arm64 systems, the build fails with the --disable-host-optimization compiler flag as it is unable to locate definitions of lockless APIs used in atomic bit operations since these declarations are present in arch/aarch64/odp_atomic.h files Consequently, the aarch64 specific code has been moved to the arch-specific file while the reminder code has been moved under the default linux-generic implementation. Signed-off-by: Malvika Gupta <Malvika.Gupta@arm.com> Reviewed-by: Govindarajan Mohandoss <govindarajan.mohandoss@arm.com> Reviewed-by: Matias Elo <matias.elo@nokia.com>
2021-03-23linux-gen: queue_lf: move aarch64 specific code to arch filesMalvika Gupta
On arm64 systems, the build fails with the --disable-host-optimization compiler flag as it is unable to locate definitions of lockless APIs present in arch/aarch64/odp_atomic.h files. Consequently, the aarch64 specific code in odp_queue_lf.c has been moved to the arch-specific file while the reminder code has been added to a new file under the default linux-generic implementation. Signed-off-by: Malvika Gupta <Malvika.Gupta@arm.com> Reviewed-by: Govindarajan Mohandoss <govindarajan.mohandoss@arm.com> Reviewed-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com>
2021-03-19linux-gen: atomic: reorganize architecture specific implementationsMatias Elo
Move architecture specific atomic function implementations to separate header files. Enables 128-bit atomic function inlining. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com>
2021-02-23linux-gen: atomic: add 128 bit atomic apisGovindarajan Mohandoss
Add 128 bit atomic compare-and-swap operations. Signed-off-by: Govindarajan Mohandoss <govindarajan.mohandoss@arm.com> Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com> Reviewed-by: Matias Elo <matias.elo@nokia.com> Tested-by: Malvika Gupta <Malvika.Gupta@arm.com>
2018-11-16linux-gen: arm atomic: fix register numbering with caspPetri Savolainen
ARMv8.1 specific casp() function failed to build due to register numbering issues. CASP instructions require that the first register of a pair is even. Force register numbering to start from even numbers (x0 and x2). Signed-off-by: Petri Savolainen <petri.savolainen@linaro.org> Reviewed-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org> Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2018-02-26update Linaro Copyrights to 2018 yearMaxim Uvarov
Using simple commands: find . -not -path .git -type f -exec \ sed -i -E 's/ (201[0-9]), Linaro/ \1-2018, Linaro/g' {} + find . -not -path .git -type f -exec \ sed -i -E 's/ (201[0-9])(-201[0-9]), Linaro/ \1-2018, Linaro/g' {} + Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org> Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
2017-12-27linux-gen: update api-next to follow merged changesDmitry Eremin-Solenikov
There were changes in master branch on the way architecture files are treated. Update api-next after merging in master to follow those changes. Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>