aboutsummaryrefslogtreecommitdiffstats
path: root/src/build-data/arch/arm.txt
Commit message (Collapse)AuthorAgeFilesLines
* Initial support for 64 bit ARMDaniel Seither2015-10-131-45/+0
| | | | | | | | | | | | | | | This adds support for 64 bit ARM cores as used in many high-end phones such as all iPhones beginning with the 5s. While these newer phones still run 32 bit ARM code, Apple doesn't allow apps to be submitted to the app store if they don't provide a 64 bit build. This commit adds a new arm64 arch and renames arm to arm32 to stay consistent with the other architectures. The name arm can still be used for configuring because it has been added as an alias for arm32. Additionally, the one piece of ARM inline assembly that can be found in Botan doesn't work on 64 bit ARM, so I use the solution that has been proposed in #180: Use __builtin_bswap32 instead of inline assembly.
* Add evbarm as platform alias for NetBSD. GH#81joerg2015-04-271-0/+1
|
* Always include modules requiring ISA extensions as long as thelloyd2013-04-171-3/+4
| | | | | | | | | | | compiler and target platform might support it. For instance the AES SSSE3 code is now always in any x86 build, with just that specific file being compiled with -mssse3. Since we'll only call that code if cpuid confirms it works at runtime, we don't have portability issues, and it can be safely included in generic builds (eg for distributions). Tweak how machine specific compiler flags are generated to be a bit easier to maintain.
* Add support for targetting the PowerPCSPE (an embedded PPC with anlloyd2011-05-121-0/+5
| | | | | experimental Debian port), and add aliases for ARM to match the Debian architectures.
* Assume ARMs are little-endian by default; big-endian ARM seems to be a rarity.lloyd2011-03-141-0/+4
| | | | | | GCC 4.3 on ARM converts __builtin_bswap32 into a jump into libgcc rather than 4 simple instructions, so write it out using inline asm instead.
* Somewhat improved ARM support/autodetectionlloyd2011-03-091-17/+26
|
* The default_submodel option was used by configure.pl but configure.pylloyd2009-11-061-2/+0
| | | | | | ignores this unless it can detect (or is asked to use) a specific model; otherwise it compiles for the baseline ISA. Remove the default_submodel entries in the arch files.
* The code for handling SIMD ISA extensions actually works fine for generallloyd2009-11-061-2/+2
| | | | | | | | ISA extensions (say, Intel's AES-NI, for instance) so change everything to reflect that. Also rename some of the amd64 models, and add entries for k10, nehalem, and westmere processors.
* Generate SIMD macro flags for build.h from data in build-data/arch forlloyd2009-11-061-0/+6
| | | | | | SSE2, SSSE3, NEON, and AltiVec. Add entries for Intel Atom, POWER6 and POWER7, and the Cortex A8 and A9.
* Remove the 'realname' attribute on all modules and cc/cpu/os info files.lloyd2009-10-291-2/+0
| | | | | Pretty much useless and unused, except for listing the module names in build.h and the short versions totally suffice for that.
* Rename all of the build-data files with a .txt extension, and filter forlloyd2009-10-131-0/+23
such in configure.py. Paul Clark reported on the list having problems with it otherwise because of CVS droppings being picked up and subsequently errored on when parsing them as build info files (of course) failed.