// File: /workspace/github_c_makefile_star2_O2/deplinenoise[P]tundra/unittest/Test_Hash.cpp
// Function: HashTest_CompareLess_Test::TestBody()
TEST(HashTest, CompareLess)
{
#if ENABLED(USE_FAST_HASH)
  HashDigest a, b;
  a.m_Words64[0] = 0; a.m_Words64[1] = 0;
  b.m_Words64[0] = 1; b.m_Words64[1] = 0;

  EXPECT_TRUE(a < b);

  a.m_Words64[0] = 0; a.m_Words64[1] = 0;
  b.m_Words64[0] = 0; b.m_Words64[1] = 1;

  EXPECT_TRUE(a < b);

  a.m_Words64[0] = 0; a.m_Words64[1] = 0xffffffffffffffffull;
  b.m_Words64[0] = 1; b.m_Words64[1] = 0;

  EXPECT_TRUE(a < b);

  a.m_Words64[0] = 0; a.m_Words64[1] = 0xffffffffffffffffull;
  b.m_Words64[0] = 0; b.m_Words64[1] = 0xfffffffffffffffeull;

  EXPECT_FALSE(a < b);

  a.m_Words64[0] = 0; a.m_Words64[1] = 0xffffffffffffffffull;
  b.m_Words64[0] = 0; b.m_Words64[1] = 0xffffffffffffffffull;

  EXPECT_FALSE(a < b);
#endif
}

// Assembly:
pushq %r14
pushq %rbx
subq $0x68, %rsp
xorps %xmm0, %xmm0
leaq 0x40(%rsp), %rdi
movaps %xmm0, (%rdi)
leaq 0x58(%rsp), %rsi
movq $0x1, (%rsi)
andq $0x0, 0x8(%rsi)
callq 0x2943b
leaq 0x38(%rsp), %r14
movb %al, -0x8(%r14)
andq $0x0, (%r14)
testb %al, %al
jne 0x290e6
leaq 0x8(%rsp), %rdi
callq 0x11c8e
leaq 0x1d688(%rip), %rdx     # 0x4670e
leaq 0x1c1e3(%rip), %rcx     # 0x45270
leaq 0x1b696(%rip), %r8      # 0x4472a
leaq 0x10(%rsp), %rdi
leaq 0x30(%rsp), %rsi
callq 0x12d68
movq 0x10(%rsp), %r8
leaq 0x1d61c(%rip), %rdx     # 0x466cb
movq %rsp, %rdi
pushq $0x1
popq %rsi
pushq $0x52
popq %rcx
callq 0x104f8
movq %rsp, %rdi
leaq 0x8(%rsp), %rsi
callq 0x10576
movq %rsp, %rdi
callq 0x10558
leaq 0x10(%rsp), %rdi
callq 0xdd68
leaq 0x8(%rsp), %rdi
callq 0x1f8e0
movq %r14, %rdi
callq 0x2295e
leaq 0x40(%rsp), %rdi
xorps %xmm0, %xmm0
movaps %xmm0, (%rdi)
leaq 0x58(%rsp), %rsi
andq $0x0, (%rsi)
movq $0x1, 0x8(%rsi)
callq 0x2943b
leaq 0x38(%rsp), %r14
movb %al, -0x8(%r14)
andq $0x0, (%r14)
testb %al, %al
jne 0x29191
leaq 0x8(%rsp), %rdi
callq 0x11c8e
leaq 0x1d5dd(%rip), %rdx     # 0x4670e
leaq 0x1c138(%rip), %rcx     # 0x45270
leaq 0x1b5eb(%rip), %r8      # 0x4472a
leaq 0x10(%rsp), %rdi
leaq 0x30(%rsp), %rsi
callq 0x12d68
movq 0x10(%rsp), %r8
leaq 0x1d571(%rip), %rdx     # 0x466cb
movq %rsp, %rdi
pushq $0x1
popq %rsi
pushq $0x57
popq %rcx
callq 0x104f8
movq %rsp, %rdi
leaq 0x8(%rsp), %rsi
callq 0x10576
movq %rsp, %rdi
callq 0x10558
leaq 0x10(%rsp), %rdi
callq 0xdd68
leaq 0x8(%rsp), %rdi
callq 0x1f8e0
movq %r14, %rdi
callq 0x2295e
leaq 0x40(%rsp), %rdi
andq $0x0, (%rdi)
orq $-0x1, 0x8(%rdi)
leaq 0x58(%rsp), %rsi
movq $0x1, (%rsi)
andq $0x0, 0x8(%rsi)
callq 0x2943b
leaq 0x38(%rsp), %r14
movb %al, -0x8(%r14)
andq $0x0, (%r14)
testb %al, %al
jne 0x2923f
leaq 0x8(%rsp), %rdi
callq 0x11c8e
leaq 0x1d52f(%rip), %rdx     # 0x4670e
leaq 0x1c08a(%rip), %rcx     # 0x45270
leaq 0x1b53d(%rip), %r8      # 0x4472a
leaq 0x10(%rsp), %rdi
leaq 0x30(%rsp), %rsi
callq 0x12d68
movq 0x10(%rsp), %r8
leaq 0x1d4c3(%rip), %rdx     # 0x466cb
movq %rsp, %rdi
pushq $0x1
popq %rsi
pushq $0x5c
popq %rcx
callq 0x104f8
movq %rsp, %rdi
leaq 0x8(%rsp), %rsi
callq 0x10576
movq %rsp, %rdi
callq 0x10558
leaq 0x10(%rsp), %rdi
callq 0xdd68
leaq 0x8(%rsp), %rdi
callq 0x1f8e0
movq %r14, %rdi
callq 0x2295e
leaq 0x40(%rsp), %rdi
andq $0x0, (%rdi)
orq $-0x1, 0x8(%rdi)
leaq 0x58(%rsp), %rsi
andq $0x0, (%rsi)
movq $-0x2, 0x8(%rsi)
callq 0x2943b
xorb $0x1, %al
leaq 0x38(%rsp), %r14
movb %al, -0x8(%r14)
andq $0x0, (%r14)
testb %al, %al
jne 0x292ef
leaq 0x8(%rsp), %rdi
callq 0x11c8e
leaq 0x1d47f(%rip), %rdx     # 0x4670e
leaq 0x1b494(%rip), %rcx     # 0x4472a
leaq 0x1bfd3(%rip), %r8      # 0x45270
leaq 0x10(%rsp), %rdi
leaq 0x30(%rsp), %rsi
callq 0x12d68
movq 0x10(%rsp), %r8
leaq 0x1d413(%rip), %rdx     # 0x466cb
movq %rsp, %rdi
pushq $0x1
popq %rsi
pushq $0x61
popq %rcx
callq 0x104f8
movq %rsp, %rdi
leaq 0x8(%rsp), %rsi
callq 0x10576
movq %rsp, %rdi
callq 0x10558
leaq 0x10(%rsp), %rdi
callq 0xdd68
leaq 0x8(%rsp), %rdi
callq 0x1f8e0
movq %r14, %rdi
callq 0x2295e
leaq 0x40(%rsp), %rdi
andq $0x0, (%rdi)
orq $-0x1, 0x8(%rdi)
leaq 0x58(%rsp), %rsi
andq $0x0, (%rsi)
orq $-0x1, 0x8(%rsi)
callq 0x2943b
xorb $0x1, %al
leaq 0x38(%rsp), %r14
movb %al, -0x8(%r14)
andq $0x0, (%r14)
testb %al, %al
jne 0x2939c
leaq 0x8(%rsp), %rdi
callq 0x11c8e
leaq 0x1d3d2(%rip), %rdx     # 0x4670e
leaq 0x1b3e7(%rip), %rcx     # 0x4472a
leaq 0x1bf26(%rip), %r8      # 0x45270
leaq 0x10(%rsp), %rdi
leaq 0x30(%rsp), %rsi
callq 0x12d68
movq 0x10(%rsp), %r8
leaq 0x1d366(%rip), %rdx     # 0x466cb
movq %rsp, %rdi
pushq $0x1
popq %rsi
pushq $0x66
popq %rcx
callq 0x104f8
movq %rsp, %rdi
leaq 0x8(%rsp), %rsi
callq 0x10576
movq %rsp, %rdi
callq 0x10558
leaq 0x10(%rsp), %rdi
callq 0xdd68
leaq 0x8(%rsp), %rdi
callq 0x1f8e0
movq %r14, %rdi
callq 0x2295e
addq $0x68, %rsp
popq %rbx
popq %r14
retq
jmp 0x293ca
jmp 0x293d9
jmp 0x293e8
jmp 0x293ca
jmp 0x293f7
jmp 0x293d9
jmp 0x293e8
jmp 0x293ca
jmp 0x293f7
jmp 0x293d9
jmp 0x293e8
jmp 0x293ca
jmp 0x293f7
jmp 0x293d9
jmp 0x293e8
movq %rax, %rbx
movq %rsp, %rdi
callq 0x10558
jmp 0x293dc
jmp 0x293f7
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0xdd68
jmp 0x293eb
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x1f8e0
jmp 0x293fa
movq %rax, %rbx
movq %r14, %rdi
callq 0x2295e
movq %rbx, %rdi
callq 0xdbf0