// File: /workspace/github_c_makefile_star2_O3/connycommy[P]atCmdDevice/src/test/unity.c
// Function: UnityAssertGreaterOrLessOrEqualNumber
void UnityAssertGreaterOrLessOrEqualNumber(const UNITY_INT threshold,
                                           const UNITY_INT actual,
                                           const UNITY_COMPARISON_T compare,
                                           const char *msg,
                                           const UNITY_LINE_TYPE lineNumber,
                                           const UNITY_DISPLAY_STYLE_T style)
{
    int failed = 0;
    RETURN_IF_FAIL_OR_IGNORE;

    if ((threshold == actual) && (compare & UNITY_EQUAL_TO)) { return; }
    if ((threshold == actual))                               { failed = 1; }

    if ((style & UNITY_DISPLAY_RANGE_INT) == UNITY_DISPLAY_RANGE_INT)
    {
        if ((actual > threshold) && (compare & UNITY_SMALLER_THAN)) { failed = 1; }
        if ((actual < threshold) && (compare & UNITY_GREATER_THAN)) { failed = 1; }
    }
    else /* UINT or HEX */
    {
        if (((UNITY_UINT)actual > (UNITY_UINT)threshold) && (compare & UNITY_SMALLER_THAN)) { failed = 1; }
        if (((UNITY_UINT)actual < (UNITY_UINT)threshold) && (compare & UNITY_GREATER_THAN)) { failed = 1; }
    }

    if (failed)
    {
        UnityTestResultsFailBegin(lineNumber);
        UnityPrint(UnityStrExpected);
        UnityPrintNumberByStyle(actual, style);
        if (compare & UNITY_GREATER_THAN) { UnityPrint(UnityStrGt);       }
        if (compare & UNITY_SMALLER_THAN) { UnityPrint(UnityStrLt);       }
        if (compare & UNITY_EQUAL_TO)     { UnityPrint(UnityStrOrEqual);  }
        if (compare == UNITY_NOT_EQUAL)   { UnityPrint(UnityStrNotEqual); }
        UnityPrintNumberByStyle(threshold, style);
        UnityAddMsgIfSpecified(msg);
        UNITY_FAIL_AND_BAIL;
    }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
movq 0x751e(%rip), %rax      # 0xca38
orq 0x750f(%rip), %rax      # 0xca30
jne 0x563c
movl %edx, %r15d
movq %rsi, %r12
movq %rdi, %r14
cmpq %rsi, %rdi
sete %al
testb %r15b, %al
jne 0x55b4
movl %r9d, %ebp
movq %rcx, %rbx
xorl %eax, %eax
cmpq %r12, %r14
sete %al
testb $0x10, %bpl
jne 0x5590
movl %r15d, %edx
andl $0x2, %edx
shrl %edx
testb $0x4, %r15b
movl $0x1, %ecx
cmovel %eax, %ecx
cmpq %r14, %r12
cmovbel %eax, %ecx
setb %al
testb %dl, %al
je 0x55b0
movq %r8, %rdi
callq 0x53ea
leaq 0x352f(%rip), %rdi      # 0x8aae
callq 0x4b74
movq %r12, %rdi
movl %ebp, %esi
callq 0x4d50
jmp 0x55e1
testb $0x2, %r15b
sete %dl
testb $0x4, %r15b
movl $0x1, %ecx
cmovel %eax, %ecx
cmpq %r14, %r12
cmovlel %eax, %ecx
setge %al
orb %dl, %al
je 0x5570
testl %ecx, %ecx
jne 0x55bd
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
movq %r8, %rdi
callq 0x53ea
leaq 0x34e2(%rip), %rdi      # 0x8aae
callq 0x4b74
movq %r12, %rdi
movl %ebp, %esi
callq 0x4d50
testb $0x2, %r15b
je 0x55ed
leaq 0x34d8(%rip), %rdi      # 0x8ac0
callq 0x4b74
testb $0x4, %r15b
je 0x55ff
leaq 0x34e6(%rip), %rdi      # 0x8ae0
callq 0x4b74
testb $0x1, %r15b
jne 0x5613
testl %r15d, %r15d
jne 0x561f
leaq 0x34ef(%rip), %rdi      # 0x8b00
jmp 0x561a
leaq 0x34d8(%rip), %rdi      # 0x8af2
callq 0x4b74
movq %r14, %rdi
movl %ebp, %esi
callq 0x4d50
movq %rbx, %rdi
callq 0x5411
movq $0x1, 0x73f4(%rip) # 0xca30
leaq 0x73fd(%rip), %rdi      # 0xca40
movl $0x1, %esi
callq 0x10d0