Skip to content

Investigate Condition21.Test5 failure in TailcallVerifyWithPrefix #8037

@erozenfeld

Description

@erozenfeld

Condition21.Test5 in TailcallVerifyWithPrefix (in tests\src\JIT\opt\Tailcall) is currently failing and disabled. Here is the output of the test (checked x64):

   Executing Condition21.Test5 - Verifying helper frame location on the stack while using multiple threads.
    The following shows a list of stack addresses of a local on the stack.
    You should see the same address three times before it decreases and repeats again.
    This happens because the call chain looks like this E->E->E->E->O->O->O->E->E->E->E->O->O->O
    where E is a method where tailcalls are not allowed (it's synchronized) and O is a
    method that gets tailcall'ed.

    ------ Stack addresses for thread 1. ---------
    0xb23c57e054
    0xb23c57df84
    0xb23c57df84
    0xb23c57dcc4
    0xb23c57dbf4
    0xb23c57dbf4
    0xb23c57d934
    0xb23c57d864
    0xb23c57d864
    0xb23c57d5a4
    0xb23c57d4d4
    0xb23c57d4d4
    0xb23c57d214
    0xb23c57d144
    0xb23c57d144
    0xb23c57ce84
    0xb23c57cdb4
    0xb23c57cdb4
    0xb23c57caf4
    0xb23c57ca24
    0xb23c57ca24

    ------ Stack addresses for thread 2. ---------
    0xb23c6fe0e4
    0xb23c6fe014
    0xb23c6fe014
    0xb23c6fdd54
    0xb23c6fdc84
    0xb23c6fdc84
    0xb23c6fd9c4
    0xb23c6fd8f4
    0xb23c6fd8f4
    0xb23c6fd634
    0xb23c6fd564
    0xb23c6fd564
    0xb23c6fd2a4
    0xb23c6fd1d4
    0xb23c6fd1d4
    0xb23c6fcf14
    0xb23c6fce44
    0xb23c6fce44
    0xb23c6fcb84
    0xb23c6fcab4
    0xb23c6fcab4
    Execution finished - Test FAILED
    Executing Condition21.Test6  - Caller: Arguments: None - ReturnType: void; Callee: Arguments: None - ReturnType: void
    Execution finished - Test PASSED
    Executing Condition21.Test7  - Caller: Arguments: Int32 - ReturnType: Int32; Callee: Arguments: Int32 - ReturnType: Int32
    Execution finished - Test PASSED
    Executing Condition22.Test4  - Caller: Arguments: None - ReturnType: void; Callee(regular call instruction): Arguments: 0 - ReturnType: Int32
    Execution finished - Test PASSED
    Expected: 100
    Actual: 101
    END EXECUTION - FAILED

category:correctness
theme:testing
skill-level:intermediate
cost:small

Metadata

Metadata

Assignees

No one assigned

    Labels

    JitUntriagedCLR JIT issues needing additional triagearea-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMIbug

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions