Commit Graph

157 Commits

Author SHA1 Message Date
Nick Clifton b333964fd5 GCC plugin: Always record global notes for the .text.startup, .text.exit, .text.hot and .text.cold sections. 2020-11-23 12:12:25 +00:00
Nick Clifton 62e7074ffd Clang plugin: Add -lLLVM to the build command line. 2020-11-17 16:30:19 +00:00
Nick Clifton 5b0e474e77 Annocheck: Improve reporting of missing -D_FORTIFY_SOURCE option. (#1898075) 2020-11-16 14:26:06 +00:00
Nick Clifton 3cff478cb4 Annocheck: Improve reporting of missing LTO option. 2020-11-16 11:40:56 +00:00
Nick Clifton 33cfa7d0eb annocheck: Add handling of gimple compiled files 2020-11-10 16:41:31 +00:00
Nick Clifton c0eabbb63f Add --without-gcc-plugin option. 2020-11-09 13:55:03 +00:00
Nick Clifton e6e8317766 Annocheck: Fix bug parsing DW_AT_producer. 2020-11-06 12:30:46 +00:00
Nick Clifton 34a622f99e Add reporting of GNU Property notes for PowerPC.
Add test of objcopy's note merging abilities.
2020-11-04 14:17:42 +00:00
Nick Clifton a707c7d43e Record the -flto setting and produce a soft warning if it is absent.
Suppress warnings about _D_GLIBCXX_ASSERTIONS if the source code is known to be something other than C++.
2020-10-21 15:18:44 +01:00
Nick Clifton d94f0f89ce gcc-plugin: Allow the use of the SHF_LINK_ORDER section flag to discard unused notes. (Experimental). 2020-10-02 13:29:31 +01:00
Nick Clifton ad2a3b8d06 Enable the Clang and LLVM plugins by default. (Experimental). 2020-09-28 11:41:09 +01:00
Nick Clifton 5a05a4d64e gcc-plugin: Fix test for empty PowerPC sections.
Resolves: #1880634
2020-09-21 13:13:34 +01:00
Nick Clifton 087486d90e annocheck: Add tests for the AArch64 BTI and PAC security features.
Resolves: #1862478
2020-09-16 07:47:41 +01:00
Nick Clifton 353a681587 gcc plugin: Use a 4 byte offset for PowerPC start symbols, so that they do not break disassemblies. 2020-09-10 13:42:30 +01:00
Nick Clifton 397174a269 gcc plugin: Correct the detection of 32-bit x86 builds.
Resolves: #1876197
2020-09-10 11:06:24 +01:00
Nick Clifton d9c1db450f gcc plugin: Detect any attempt to access the global_options array. 2020-08-17 10:51:27 +01:00
Nick Clifton 057676c5e3 gcc plugin: Do not complain about missing pre-processor options when examining a preprocessed input file.
Resolves: #1862718
2020-08-11 16:24:55 +01:00
Nick Clifton 16d8c4b5fe Use more robust checks for AArch64 options 2020-07-30 17:01:07 +01:00
Nick Clifton 1c15fe568b Fix bug testing CLANG compiler assembler sources 2020-07-30 08:40:49 +01:00
Nick Clifton 43a0359804 Bring in better fix for AArch64 pointer size bug 2020-07-29 16:37:50 +01:00
Nick Clifton 3ab9323c0b Temporary suppression of aarch64 pointer size check 2020-07-26 09:31:57 +01:00
Nick Clifton 6fd2366132 Annocheck: Do not skip tests of the short-enums notes. 2020-07-01 16:59:51 +01:00
Nick Clifton 9f46ccb4ce Add (optional) llvm plugin. 2020-06-15 17:33:58 +01:00
Nick Clifton 225ffdc722 Annobin: Fall back on using the flags if the option cannot be found in cl_options.
Resolves: #1817659
2020-04-22 13:01:20 +01:00
Nick Clifton 459acd6cb6 Annocheck: Detect Fortran compiled programs. (#1824393) 2020-04-16 16:29:42 +01:00
Nick Clifton ec93f17ffa Annobin: If option name mismatch occurs, seach for the real option.
Resolves: #1817452
2020-04-01 14:21:23 +01:00
Nick Clifton dcdc0af39b Annocheck: Fix a division by zero error when parsing GO binaries.
Resolves: #1818863
2020-03-30 17:13:30 +01:00
Nick Clifton dcc513660a Annobin: Fix access to the -flto and -fsanitize flags. 2020-03-27 09:53:24 +00:00
Nick Clifton 82024ae45f Add some debugging 2020-03-27 08:58:02 +00:00
Nick Clifton 25d4740c92 Use offsets stored in gcc's cl_option structure to access the global_options array, thus removing the need to check for changes in the size of this structure. 2020-03-26 15:46:44 +00:00
Nick Clifton fd8169aaee Rename gcc plugin directory to gcc-plugin.
Stop annocheck from complaining about missing options when the binary has been built in a mixed environment.
2020-03-12 16:29:39 +00:00
Nick Clifton 09d5b50939 Improve builtby tool.
Stop annocheck complaining about missing notes when the binary is not compiled by either gcc or clang.
Skip the check of the ENTRY instruction for binaries not compiled by gcc or clang.
2020-03-04 14:22:53 +00:00
Nick Clifton cb98e5f903 Fix infinite loop hangup in annocheck.
Disable debuginfod support by default.
Improve parsing of .comment section.
2020-02-28 10:43:39 +00:00
Nick Clifton 5d051cb7a7 Fix clang plugin to use hidden symbols. 2020-02-27 12:42:53 +00:00
Nick Clifton f7f58a9fb9 Add ability to build clang plugin (disabled by default). 2020-02-25 15:50:15 +00:00
Nick Clifton e8f56c0bdb Annocheck: Fix error printing out the version number. 2020-02-17 17:21:55 +00:00
Nick Clifton 1fa49e66f8 Annobin: Add checks of the exact location of the examined switches. 2020-02-14 13:48:28 +00:00
Nick Clifton eb569a62e1 Annobin: Note when stack clash notes are generated.
Annocheck: Handle multiple builder IDs in the .comment section.
2020-02-11 15:30:09 +00:00
Nick Clifton 2b9645b749 Add configure option to suppress building annocheck. 2020-01-31 13:32:01 +00:00
Nick Clifton dba13c4fd1 oops - forgot to add the new sources 2020-01-31 12:10:52 +00:00
Nick Clifton 3317ae10db Add support for debuginfod (disabled by default) 2020-01-30 16:48:12 +00:00
Nick Clifton 980573dc2e Add experimental clang plugin and rebuild with gcc-10. 2020-01-20 12:38:03 +00:00
Nick Clifton 8997d89f3d Have annocheck ignore notes with an end address of 0. 2019-12-06 14:43:08 +00:00
Nick Clifton 9c95399d00 Add new sources 2019-11-18 21:31:07 +00:00
Nick Clifton 27da4aee96 Improve checking of gcc versions. 2019-11-18 17:37:38 +00:00
Nick Clifton 9f8f0cdd01 Annocheck: Do not skip positive results. 2019-11-15 15:59:54 +00:00
Nick Clifton d97bf868e7 Generate a WARN result for code compiled with instrumentation enabled.
Relates: #1753918
2019-11-01 13:58:20 +00:00
Nick Clifton fff201eb4f Replace address checks with dladdr1. 2019-10-22 16:55:27 +01:00
Nick Clifton 046883693b Use libabigail like checking to ensure variable address consistency. 2019-10-21 16:51:56 +01:00
Nick Clifton 07e0a5ab8f Skip generation of global notes for hot/cold sections. 2019-10-16 16:35:21 +01:00