summaryrefslogtreecommitdiffstats
path: root/Tests/Assembler
Commit message (Collapse)AuthorAgeFilesLines
* LCC: Add policy CMP0129 regarding interpreting LCC as GNUmakise-homura2021-10-211-0/+3
| | | | | | | | | | Due to MCST LCC compiler identification is now changed to LCC, there should be a way for old projects to still identify it as GNU, as it was before. This commits adds the policy: CMP0129: Compiler id for MCST LCC compilers is now LCC, not GNU. This policy controls such a behavior. OLD behaivior is to treat LCC as GNU, NEW is to treat is as LCC.
* LCC: Add dedicated support for MCST LCC compilermakise-homura2021-10-151-1/+1
| | | | | | | | | | | | | | | | | | | | | Divert LCC compiler as a new one, instead of treating it as GNU. Since old times, Elbrus C/C++/Fortran Compiler (LCC) by MCST has been passing checks for GNU compilers, so it has been identified as GNU. Now, with intent of seriously upstreaming its support, it has been added as a separate LCC compiler, and its version displays not a supported GCC version, but LCC version itself (e.g. LCC 1.25.19 instead of GNU 7.3.0). This commit adds its support for detection, and also converts basically every check like 'is this compiler GNU?' to 'is this compiler GNU or LCC?'. The only places where this check is untouched, is where it regards other platforms where LCC is unavailable (primarily non-Linux), and where it REALLY differs from GNU compiler. Note: this transition may break software that are already ported to Elbrus, but hardly relies that LCC will be detected as GNU; still such software is not known.
* Tests: Update Assembler test for IntelLLVMBrad King2021-01-281-1/+1
| | | | Enable parts of the test the same way we do for `Intel`.
* macOS: Default to arm64 architecture on Apple Silicon hostsBrad King2020-09-301-0/+2
| | | | | | | | Detect `arm64` hardware using a method that pierces Rosetta. If `CMAKE_OSX_ARCHITECTURES` is not set, pass explicit flags to the toolchain to use `arm64` instead of letting the toolchain pick. Fixes: #20989
* Tests: Enable Assembler test case when CMAKE_OSX_ARCHITECTURES has one valueBrad King2020-09-291-1/+4
|
* Tests: Update Assembler code generation to select MSVC runtime libraryBrad King2020-01-311-2/+6
| | | | | | | | | The `Assembler` test runs the C compiler in a custom command to generate a `.s` file for the platform. When using the GNU-like Clang variant on Windows, ensure that the custom command includes the MSVC runtime library selection flags for Clang. That way the resulting `.s` file, when assembled into a `.obj`, will tell the linker what runtime library it needs.
* Tests: fix some Clang failures on WindowsZsolt Parragi2019-07-091-2/+3
| | | | | | | | | * Execute MSVCRuntimeLibrary tests for GNU command line mode Clang on Windows using the MSVC ABI * Assembler tests should be executed with the Ninja generator * Assembler tests shouldn't be executed with clang-cl * Fixed a condition in the Preprocess test for clang-cl * Adjusted the conditions on some MSVC specific tests
* Revise C++ coding style using clang-formatKitware Robot2016-05-161-3/+5
| | | | | | | | | | | | | Run the `Utilities/Scripts/clang-format.bash` script to update all our C++ code to a new style defined by `.clang-format`. Use `clang-format` version 3.8. * If you reached this commit for a line in `git blame`, re-run the blame operation starting at the parent of this commit to see older history for the content. * See the parent commit for instructions to rebase a change across this style transition commit.
* Avoid if() quoted auto-dereferenceBen Boeckel2014-10-201-1/+1
| | | | | | | When testing CMAKE_<LANG>_COMPILER_ID values, do not explicitly dereference or quote the variable. We want if() to auto-dereference the variable and not its value. Also replace MATCHES with STREQUAL where equivalent.
* Tests/Assembler: Drop -g when generating sample assembly sourceBrad King2013-11-011-0/+3
| | | | | | Some compilers, such as Clang on OS X, do not want the -g flag for both generating assembly code and assembling it. Drop the -g flag from generation of main.s in the Assembler test.
* Clang: Add separate "AppleClang" compiler idBrad King2013-10-081-1/+1
| | | | | | | | | | | | Apple distributes their own Clang build with their own version numbers that differ from upstream Clang. Use the __apple_build_version__ symbol to identify the Apple Clang compiler and report the Apple Build Version as the fourth version component in CMAKE_<LANG>_COMPILER_VERSION. Add Compiler/AppleClang-<lang> and Platform/Darwin-AppleClang-<lang> modules that simply include the upstream equivalents. Fix comparisons of CMAKE_<LANG>_COMPILER_ID to Clang in CMake's own source and tests to account for AppleClang.
* Tests/Assembler: Use CMAKE_OSX_SYSROOT to generate .s fileBrad King2012-09-211-0/+3
| | | | | | On OS X if the user-provided flags do not include -isysroot and CMAKE_OSX_SYSROOT is defined then add the proper -isysroot flag to the C compiler invocation we use to generate the .s file.
* Tests/Assembler: Do not use assembler in universal binariesBrad King2012-08-151-1/+2
| | | | | If CMAKE_OSX_ARCHITECTURES is set then the computed assembler .s source file may not work for all architectures. Skip it in that case.
* Xcode: Set ASM source language in project file (#13472)Brad King2012-08-151-1/+1
| | | | | | Also teach the Assembler test to build under Xcode. Suggested-by: Tobias Pape <tobiaspape@gmail.com>
* Recognize Clang ASM support (#13473)Brad King2012-08-151-1/+1
| | | | | | | | | Since commit 571dc748 (Recognize Clang C and C++ compilers, 2010-05-17) we recognize Clang C and C++ support. Add Compiler/Clang-ASM.cmake to enable use of Clang for ASM too. Also teach Assembler test to try Clang as an assembler. Suggested-by: Tobias Pape <tobiaspape@gmail.com>
* Remove CMake-language block-end command argumentsKitware Robot2012-08-131-4/+4
| | | | | | | | | | | | | | | | | Ancient versions of CMake required else(), endif(), and similar block termination commands to have arguments matching the command starting the block. This is no longer the preferred style. Run the following shell code: for c in else endif endforeach endfunction endmacro endwhile; do echo 's/\b'"$c"'\(\s*\)(.\+)/'"$c"'\1()/' done >convert.sed && git ls-files -z -- bootstrap '*.cmake' '*.cmake.in' '*CMakeLists.txt' | egrep -z -v '^(Utilities/cm|Source/kwsys/)' | egrep -z -v 'Tests/CMakeTests/While-Endwhile-' | xargs -0 sed -i -f convert.sed && rm convert.sed
* Tests/Assembler: Assemble and link with same flags (#13314)Daniel R. Gomez2012-06-181-0/+1
| | | | | The test uses the C compiler as the assembler so use the C flags for ASM too. This is important when the flags specify the target ABI.
* Do not bother enabling C++ in Assembler testBrad King2011-03-041-1/+1
| | | | | This test needs only the C compiler and ASM compiler so do not enable the C++ compiler.
* Teach Assembler test to generate main.s at build timeBrad King2011-03-041-2/+9
| | | | | | | Use a custom command to generate the assembly source file at build time. Also set CMAKE_VERBOSE_MAKEFILE so the test output contains all the build rules. These two changes will show the entire .c -> .s -> .o and final link commands in the test output.
* Fix Assembler test to parse C flags string before usingBrad King2011-03-041-1/+3
| | | | | | | Commit 1f6c6b1c (use CMAKE_C_FLAGS when generating the assembler file, 2011-03-03) added use of CMAKE_C_FLAGS to the assembler generation step. However, this variable is meant for direct substitution into a shell command line so we need to parse it to separate the arguments first.
* -only enable the asm test for the Intel compiler if we are under UNIXAlex Neundorf2011-03-031-2/+2
| | | | | | ...have to find out how to generate assembler with icl.exe Alex
* -use CMAKE_C_FLAGS when generating the assembler fileAlex Neundorf2011-03-031-1/+1
| | | | Alex
* Only try assembler support for Makefile-based generatorsAlex Neundorf2011-03-011-4/+6
| | | | Alex
* Use a regexp instead a lot of ORs for checking the compiler IDAlex Neundorf2011-02-241-11/+3
| | | | Alex
* The Assembler test now tests ASM for GNU, Intel, HP, XL and SunProAlex Neundorf2011-02-231-16/+19
| | | | Alex
* ENH: preclean some warningsKen Martin2008-03-251-0/+1
|
* COMP: hopefully fix test, finallyAlexander Neundorf2007-07-091-1/+0
| | | | Alex
* COMP: fix testAlexander Neundorf2007-07-091-3/+3
| | | | Alex
* BUG: fix testAlexander Neundorf2007-07-061-2/+2
| | | | Alex
* COMP: OPTIONAL was missing in ENABLE_LANGUAGE()Alexander Neundorf2007-07-062-14/+19
| | | | | | | -the assembler file seems to work for Linux and FreeBSD -try to fix main() for HP-UX compiler Alex
* STYLE: some more outputAlexander Neundorf2007-07-051-0/+2
| | | | Alex
* COMP: skip APPLE, since there with universal binaries the assembler file ↵Alexander Neundorf2007-07-052-3/+2
| | | | | | would be built for both architectures Alex
* COMP: let's see if this assembler file works also on other platforms than ↵Alexander Neundorf2007-07-051-2/+4
| | | | | | linux... Alex
* ENH: add a simple assembler testAlexander Neundorf2007-07-053-0/+58
Alex