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.

Reply via email to