~ubuntu-elisp/emacs/+git/master:feature/asan-gc-poisoning

Last commit made on 2022-12-18
Get this branch:
git clone -b feature/asan-gc-poisoning https://git.launchpad.net/~ubuntu-elisp/emacs/+git/master

Branch merges

Branch information

Name:
feature/asan-gc-poisoning
Repository:
lp:~ubuntu-elisp/emacs/+git/master

Recent commits

8043ba1... by Vibhav Pant

Avoid build failure when building without -fsanitize=address.

* src/lisp.h (UNALIGNED_LOAD_SIZE): Only use the sanitizer version of
the macro when USE_SANITIZER_UNALIGNED_LOAD is defined, avoiding link
errors when building without -fsanitize=address.

b9495c3... by Vibhav Pant

src/alloc.c: Convert ASan functions to macros to reduce overhead.

* src/alloc.c (ASAN_POISON_ABLOCK, ASAN_UNPOISON_ABLOCK)
(ASAN_POISON_INTERVAL_BLOCK, ASAN_UNPOISON_INTERVAL_BLOCK)
(ASAN_POISON_INTERVAL, ASAN_UNPOISON_INTERVAL)
(ASAN_PREPARE_DEAD_SDATA, ASAN_PREPARE_LIVE_SDATA)
(ASAN_POISON_SBLOCK_DATA, ASAN_POISON_STRING_BLOCK)
(ASAN_UNPOISON_STRING_BLOCK, ASAN_POISON_STRING)
(ASAN_UNPOISON_STRING, ASAN_POISON_FLOAT_BLOCK)
(ASAN_UNPOISON_FLOAT_BLOCK, ASAN_POISON_FLOAT)
(ASAN_UNPOISON_FLOAT, ASAN_POISON_CONS_BLOCK)
(ASAN_POISON_CONS, ASAN_UNPOISON_CONS)
(ASAN_POISON_VECTOR_CONTENTS, ASAN_UNPOISON_VECTOR_CONTENTS)
(ASAN_UNPOISON_VECTOR_BLOCK, ASAN_POISON_SYMBOL_BLOCK)
(ASAN_UNPOISON_SYMBOL_BLOCK, ASAN_POISON_SYMBOL)
(ASAN_UNPOISON_SYMBOL): Rewrite as macros to remove unneeded overhead
when address sanitization is disabled.

7f8aa9d... by Vibhav Pant

Make unaligned loads work with sanitization.

Address sanitizer may miss memory bugs that happen during unaligned
loads. To prevent that, compilers may provide additional functions to
perform unaligned loads/stores, which allow sanitizer instrumentation
to check these accesses too. If the necessary header is available, and
AddressSanitizer is enabled, use them.

* configure.ac: Add check for <sanitizer/common_interface_defs.h>.
* src/lisp.h (UNALIGNED_LOAD_SIZE) [ADDRESS_SANITIZER]: New macro. If
the common sanitizer interface is available and address sanitization
is enabled, define it to __sanitizer_unaligned_load(64|32), depending
on the word size of the architecture.
* src/fns.c [HAVE_FAST_UNALIGNED_ACCESS] (Fstring_lessp): Use
'UNALIGNED_LOAD_SIZE' to perform unaligned loads from the two strings.

aa9ca2c... by Vibhav Pant

src/alloc.c: Fix incorrect pointer arithmetic.

* src/alloc.c (live_float_holding): Use parenthesis around the
pointer arithmetic expression to untag 'cp' correctly.

772650f... by Vibhav Pant

Merge branch 'master' into feature/asan-gc-poisoning

3e00e50... by Po Lu <email address hidden>

Fix potential crash deselecting for property change notifications

* src/xselect.c (x_cancel_selection_transfer): Catch errors
around XSelectInput.

a51743d... by Manuel Giraud <email address hidden>

Make a boxed menu bar have a shadow at its right end (bug#59778)

* src/xdisp.c (display_menu_bar) [HAVE_X_WINDOWS]: Make a boxed
menu bar have a shadow at its right end in non-toolkit X builds.

f96a9e1... by Po Lu <email address hidden>

Make Emacs build with Xfixes support on old versions of the library

* src/xterm.c (xfixes_toggle_visible_pointer):
(x_toggle_visible_pointer):
(XTtoggle_invisible_pointer, x_term_init): Disable code
requiring fixes 4.0 or later when the fixes library is older.
* src/xterm.h: Define missing types needed by other extensions
when the fixes library is too old.
* configure.ac: Allow building with any version of the Xfixes
extension library.

be67cc2... by Stefan Kangas

Merge from origin/emacs-29

96af584af6c Fix comment-start-skip in tree-sitter modes (bug#59690)
520a4e12f8e ; * lisp/treesit.el (treesit-end-of-defun): Guard against...
2c4d92d30f6 ; * lisp/subr.el (posn-col-row): Revert inadvertent change.
6fb9a03cbdf ; Remove debugging leftover message
c5ba47c889e Speed up Unicode normalisation tests by a factor of 5
afa4fcb95b4 Fix "C-h k" when clicking on another frame
f6e2f30f394 ; Fix typos
bd58dcedfb9 Fix and expand tests broken by commit 2772ebe366 of 2022-...
a0dd9fdebe3 ; Add cross-reference to string-equal docstring
11c3c54d8ad Fix handling of relative directories in "--init-directory...
401f76cc3d6 Make sure 'user-emacs-directory' ends in a slash

91a578a... by Stefan Kangas

; Merge from origin/emacs-29

The following commits were skipped:

641ef36403b Fix gud-minor-mode-menu
3623d5c195d Revert "Make easy-mmode-defmap obsolete and adjust only c...