// File: /workspace/github_c_makefile_star2_O0/glitchub[P]evdump/./input.generated.h
// Function: ed_ABS
const char * ed_ABS(int n)
{
  switch(n)
  {
    case 0: return "ABS_X";
    case 1: return "ABS_Y";
    case 2: return "ABS_Z";
    case 3: return "ABS_RX";
    case 4: return "ABS_RY";
    case 5: return "ABS_RZ";
    case 6: return "ABS_THROTTLE";
    case 7: return "ABS_RUDDER";
    case 8: return "ABS_WHEEL";
    case 9: return "ABS_GAS";
    case 10: return "ABS_BRAKE";
    case 16: return "ABS_HAT0X";
    case 17: return "ABS_HAT0Y";
    case 18: return "ABS_HAT1X";
    case 19: return "ABS_HAT1Y";
    case 20: return "ABS_HAT2X";
    case 21: return "ABS_HAT2Y";
    case 22: return "ABS_HAT3X";
    case 23: return "ABS_HAT3Y";
    case 24: return "ABS_PRESSURE";
    case 25: return "ABS_DISTANCE";
    case 26: return "ABS_TILT_X";
    case 27: return "ABS_TILT_Y";
    case 28: return "ABS_TOOL_WIDTH";
    case 32: return "ABS_VOLUME";
    case 40: return "ABS_MISC";
    case 46: return "ABS_RESERVED";
    case 47: return "ABS_MT_SLOT";
    case 48: return "ABS_MT_TOUCH_MAJOR";
    case 49: return "ABS_MT_TOUCH_MINOR";
    case 50: return "ABS_MT_WIDTH_MAJOR";
    case 51: return "ABS_MT_WIDTH_MINOR";
    case 52: return "ABS_MT_ORIENTATION";
    case 53: return "ABS_MT_POSITION_X";
    case 54: return "ABS_MT_POSITION_Y";
    case 55: return "ABS_MT_TOOL_TYPE";
    case 56: return "ABS_MT_BLOB_ID";
    case 57: return "ABS_MT_TRACKING_ID";
    case 58: return "ABS_MT_PRESSURE";
    case 59: return "ABS_MT_DISTANCE";
    case 60: return "ABS_MT_TOOL_X";
    case 61: return "ABS_MT_TOOL_Y";
    case 63: return "ABS_MAX";
  }
  return NULL;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movl %edi, -0xc(%rbp)
movl -0xc(%rbp), %eax
movq %rax, -0x18(%rbp)
subq $0x3f, %rax
ja 0x3d1e
movq -0x18(%rbp), %rax
leaq 0x3a21(%rip), %rcx      # 0x74a4
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x5a9d(%rip), %rax      # 0x9530
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a93(%rip), %rax      # 0x9536
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a89(%rip), %rax      # 0x953c
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a7f(%rip), %rax      # 0x9542
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a76(%rip), %rax      # 0x9549
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a6d(%rip), %rax      # 0x9550
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a64(%rip), %rax      # 0x9557
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a61(%rip), %rax      # 0x9564
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a5c(%rip), %rax      # 0x956f
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a56(%rip), %rax      # 0x9579
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a4e(%rip), %rax      # 0x9581
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a48(%rip), %rax      # 0x958b
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a42(%rip), %rax      # 0x9595
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a3c(%rip), %rax      # 0x959f
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a36(%rip), %rax      # 0x95a9
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a30(%rip), %rax      # 0x95b3
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a2a(%rip), %rax      # 0x95bd
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a24(%rip), %rax      # 0x95c7
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a1e(%rip), %rax      # 0x95d1
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a18(%rip), %rax      # 0x95db
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a15(%rip), %rax      # 0x95e8
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a12(%rip), %rax      # 0x95f5
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a0d(%rip), %rax      # 0x9600
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a08(%rip), %rax      # 0x960b
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a07(%rip), %rax      # 0x961a
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a02(%rip), %rax      # 0x9625
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x59fb(%rip), %rax      # 0x962e
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x59f8(%rip), %rax      # 0x963b
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x59f4(%rip), %rax      # 0x9647
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x59f7(%rip), %rax      # 0x965a
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x59fa(%rip), %rax      # 0x966d
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x59fd(%rip), %rax      # 0x9680
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a00(%rip), %rax      # 0x9693
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a03(%rip), %rax      # 0x96a6
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a08(%rip), %rax      # 0x96b8
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a0d(%rip), %rax      # 0x96ca
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a11(%rip), %rax      # 0x96db
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a13(%rip), %rax      # 0x96ea
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a19(%rip), %rax      # 0x96fd
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a1c(%rip), %rax      # 0x970d
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a1f(%rip), %rax      # 0x971d
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a20(%rip), %rax      # 0x972b
movq %rax, -0x8(%rbp)
jmp 0x3d26
leaq 0x5a21(%rip), %rax      # 0x9739
movq %rax, -0x8(%rbp)
jmp 0x3d26
movq $0x0, -0x8(%rbp)
movq -0x8(%rbp), %rax
popq %rbp
retq
nopl (%rax)