Skip to content

[Arm64] MathRound3::PosTest4 failing #8355

@sdmaclea

Description

@sdmaclea

@dotnet/arm64-contrib @dotnet/jit-contrib @janvorli

The new test case introduced by dotnet/coreclr#12210 is not passing on arm64 tip. Also the JIT code is not hitting the revised COM*::Round() functions at all.

corerun MathRound3.exe
Beginning test case MathRound3 at 6/14/17 11:02:29 PM
Random seed: 20010415; set environment variable CORECLR_SEED to this value to repro

[Positive]
Beginning scenario: PosTest1: Verify Round(System.double) when decimal part of arg d < =0.5 .
Beginning scenario: PosTest2: Verify Round(System.double) when decimal part of arg d > 0.5 .
Beginning scenario: PosTest3: Verify Round(System.double) when decimal part of arg is very close to -0.5 .
Beginning scenario: PosTest4: Verify Round(System.double) when decimal part of arg is very close to 0.5 .
actual value = 0
expected value = 1
ERROR!!!-001.1: Return value is wrong!
Beginning scenario: NegTest1: OverflowException is not thrown.

Ending test case at 6/14/17 11:02:30 PM
; Assembly listing for method MathRound3:PosTest4():bool:this
; Emitting BLENDED_CODE for 
; optimized code
; fp based frame
; partially interruptible
; Final local variable assignments
;
;* V00 this         [V00    ] (  0,  0   )     ref  ->  zero-ref    this class-hnd
;  V01 loc0         [V01,T05] (  2,  1.50)    bool  ->   x0        
;* V02 loc1         [V02,T06] (  0,  0   )  double  ->  zero-ref   
;* V03 loc2         [V03,T07] (  0,  0   )  double  ->  zero-ref   
;  V04 tmp0         [V04,T00] ( 10, 10   )     ref  ->   x0        
;  V05 tmp1         [V05,T01] (  4,  4   )     ref  ->   x1        
;  V06 tmp2         [V06,T02] (  4,  4   )     ref  ->  [fp+0x18]  
;  V07 tmp3         [V07,T03] (  4,  4   )     ref  ->   x1        
;  V08 tmp4         [V08,T04] (  4,  4   )     ref  ->   x9        
;# V09 OutArgs      [V09    ] (  1,  1   )  lclBlk ( 0) [sp+0x00]  
;
; Lcl frame size = 16

G_M29044_IG01:
        A9BE7BFD          stp     fp, lr, [sp,#-32]!
        910003FD          mov     fp, sp

G_M29044_IG02:
        D2822E00          movz    x0, #0x1170
        F2A30000          movk    x0, #0x1800 LSL dotnet/coreclr#16
        F2DFFFE0          movk    x0, #0xffff LSL dotnet/coreclr#32
        F9400000          ldr     x0, [x0]
        97FFFE26          bl      TestLibrary.TestFramework:BeginScenario(ref)
        D28F4C00          movz    x0, #0x7a60
        F2A6ED20          movk    x0, #0x3769 LSL dotnet/coreclr#16
        F2DFFFE0          movk    x0, #0xffff LSL dotnet/coreclr#32
        97FFEE4E          bl      CORINFO_HELP_NEWSFAST
        D2822C01          movz    x1, #0x1160
        F2A30001          movk    x1, #0x1800 LSL dotnet/coreclr#16
        F2DFFFE1          movk    x1, #0xffff LSL dotnet/coreclr#32
        F9400021          ldr     x1, [x1]
        4F00E410          movi    v16.16b, #0x00
        FD000410          str     d16, [x0,#8]
        F9000FA0          str     x0, [fp,#24]	// [V06 tmp2]
        AA0103E0          mov     x0, x1
        F9400FA1          ldr     x1, [fp,#24]	// [V06 tmp2]
        97FFEBC8          bl      System.Console:WriteLine(ref,ref)
        D28F4C00          movz    x0, #0x7a60
        F2A6ED20          movk    x0, #0x3769 LSL dotnet/coreclr#16
        F2DFFFE0          movk    x0, #0xffff LSL dotnet/coreclr#32
        97FFEE40          bl      CORINFO_HELP_NEWSFAST
        D2822D01          movz    x1, #0x1168
        F2A30001          movk    x1, #0x1800 LSL dotnet/coreclr#16
        F2DFFFE1          movk    x1, #0xffff LSL dotnet/coreclr#32
        F9400021          ldr     x1, [x1]
        1E6E1010          fmov    d16, dotnet/coreclr#1.0000
        FD000410          str     d16, [x0,#8]
        AA0003E9          mov     x9, x0
        AA0103E0          mov     x0, x1
        AA0903E1          mov     x1, x9
        97FFEBBA          bl      System.Console:WriteLine(ref,ref)
        D2822000          movz    x0, #0x1100
        F2A30000          movk    x0, #0x1800 LSL dotnet/coreclr#16
        F2DFFFE0          movk    x0, #0xffff LSL dotnet/coreclr#32
        F9400000          ldr     x0, [x0]
        D2822101          movz    x1, #0x1108
        F2A30001          movk    x1, #0x1800 LSL dotnet/coreclr#16
        F2DFFFE1          movk    x1, #0xffff LSL dotnet/coreclr#32
        F9400021          ldr     x1, [x1]
        97FFEA9F          bl      TestLibrary.TestFramework:LogError(ref,ref)
        2A1F03E0          mov     w0, wzr

G_M29044_IG03:
        A8C27BFD          ldp     fp, lr, [sp],#32
        D65F03C0          ret     lr

Metadata

Metadata

Assignees

No one assigned

    Labels

    arch-arm64area-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