diff options
author | Max Ostapenko <m.ostapenko@partner.samsung.com> | 2015-10-21 10:53:22 +0300 |
---|---|---|
committer | Maxim Ostapenko <chefmax@gcc.gnu.org> | 2015-10-21 10:53:22 +0300 |
commit | 7047bc9c1613aa243357d6db7d66683e3e9e0e4d (patch) | |
tree | 547850eb9642d80a02fc54faccadf92a604f2c32 | |
parent | 21d6106320c64bfd87ee81a3c0e342ba7697e0a3 (diff) | |
download | gcc-7047bc9c1613aa243357d6db7d66683e3e9e0e4d.zip gcc-7047bc9c1613aa243357d6db7d66683e3e9e0e4d.tar.gz gcc-7047bc9c1613aa243357d6db7d66683e3e9e0e4d.tar.bz2 |
HOWTO_MERGE: New file.
libsanitizer/
* HOWTO_MERGE: New file.
From-SVN: r229116
-rw-r--r-- | libsanitizer/ChangeLog | 4 | ||||
-rw-r--r-- | libsanitizer/HOWTO_MERGE | 26 |
2 files changed, 30 insertions, 0 deletions
diff --git a/libsanitizer/ChangeLog b/libsanitizer/ChangeLog index 2ed4cc3..cead59d 100644 --- a/libsanitizer/ChangeLog +++ b/libsanitizer/ChangeLog @@ -1,5 +1,9 @@ 2015-10-21 Maxim Ostapenko <m.ostapenko@partner.samsung.com> + * HOWTO_MERGE: New file. + +2015-10-21 Maxim Ostapenko <m.ostapenko@partner.samsung.com> + * sanitizer_common/sanitizer_stacktrace.cc (GetCanonicFrame): Assume we compiled code with GCC when extracting the caller PC for ARM if no valid frame pointer is available. diff --git a/libsanitizer/HOWTO_MERGE b/libsanitizer/HOWTO_MERGE new file mode 100644 index 0000000..5d68e06 --- /dev/null +++ b/libsanitizer/HOWTO_MERGE @@ -0,0 +1,26 @@ +In general, merging process should not be very difficult, but we need to +track various ABI changes and GCC-specific patches carefully. Here is a +general list of actions required to perform the merge: + +- Checkout recent GCC tree. +- Run merge.sh script from libsanitizer directory. +- Modify Makefile.am files into asan/tsan/lsan/ubsan/sanitizer_common/interception + directories if needed. In particular, you may need to add new source files + and remove old ones in source files list, add new flags to {C, CXX}FLAGS if + needed and update DEFS with new defined variables. +- Apply all needed GCC-specific patches to libsanitizer (note that some of + them might be already included to upstream). +- Apply all necessary compiler changes. Be especially careful here, you must + not break ABI between compiler and library. +- Modify configure.ac file if needed (e.g. if you need to add link against new + library for sanitizer lilbs). +- Remove unused (deleted by merge) files from all source and include + directories. Be especially careful with headers, because they aren't listed + in Makefiles explicitly. +- Regenerate configure script and all Makefiles by autoreconf. You should use + exactly the same autotools version as for other GCC directories (current + version is 2.64, https://www.gnu.org/software/automake/faq/autotools-faq.html + for details how to install/use it). +- Run regression testing on at least three platforms (e.g. x86-linux-gnu, + x86_64-linux-gnu, aarch64-linux-gnu). +- Run {A, UB}San bootstrap on at least three platforms. |