[valgrind] [Bug 484935] [patch] Valgrind reports false "Conditional jump or move depends on uninitialised value" errors for aarch64 signal handlers

2024-04-03 Thread Peter Edwards
https://bugs.kde.org/show_bug.cgi?id=484935

--- Comment #5 from Peter Edwards  ---
Thanks for the fast turn-around!

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 484935] [patch] Valgrind reports false "Conditional jump or move depends on uninitialised value" errors for aarch64 signal handlers

2024-04-02 Thread Peter Edwards
https://bugs.kde.org/show_bug.cgi?id=484935

--- Comment #1 from Peter Edwards  ---
Created attachment 168063
  --> https://bugs.kde.org/attachment.cgi?id=168063&action=edit
Patch for issue

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 484935] New: [patch] Valgrind reports false "Conditional jump or move depends on uninitialised value" errors for aarch64 signal handlers

2024-04-02 Thread Peter Edwards
https://bugs.kde.org/show_bug.cgi?id=484935

Bug ID: 484935
   Summary: [patch] Valgrind reports false "Conditional jump or
move depends on uninitialised value" errors for
aarch64 signal handlers
Classification: Developer tools
   Product: valgrind
   Version: unspecified
  Platform: Compiled Sources
OS: Linux
Status: REPORTED
  Severity: normal
  Priority: NOR
 Component: general
  Assignee: jsew...@acm.org
  Reporter: pea...@arista.com
  Target Milestone: ---

Created attachment 168062
  --> https://bugs.kde.org/attachment.cgi?id=168062&action=edit
Test showing erroneous behaviour for linux/aarch64

Accessing the arguments to signal handlers in aarch64 binaries can create
"Conditional jump or move depends on uninitialized value" diagnostics.

Comparing the code for the aarch64 signal frame creation to that for x86_64
shows the problem - the values for the registers used for passing arguments (X0
thru X3) are modified, but the required `VG_TRACK( post_reg_write, ...` macros
are not invoked to indicate that the registers now have well defined values.
Adding these VG_TRACK macros in fixes the issue.

The attached test.c shows the problem under `valgrind` without the fix, but
succeeds with it.

-- 
You are receiving this mail because:
You are watching all bug changes.