// File: /workspace/github_c_makefile_star2_O0/gplessis[P]dotdeb-redis/src/server.c
// Function: createSharedObjects
void createSharedObjects(void) {
    int j;

    shared.crlf = createObject(OBJ_STRING,sdsnew("\r\n"));
    shared.ok = createObject(OBJ_STRING,sdsnew("+OK\r\n"));
    shared.err = createObject(OBJ_STRING,sdsnew("-ERR\r\n"));
    shared.emptybulk = createObject(OBJ_STRING,sdsnew("$0\r\n\r\n"));
    shared.czero = createObject(OBJ_STRING,sdsnew(":0\r\n"));
    shared.cone = createObject(OBJ_STRING,sdsnew(":1\r\n"));
    shared.cnegone = createObject(OBJ_STRING,sdsnew(":-1\r\n"));
    shared.nullbulk = createObject(OBJ_STRING,sdsnew("$-1\r\n"));
    shared.nullmultibulk = createObject(OBJ_STRING,sdsnew("*-1\r\n"));
    shared.emptymultibulk = createObject(OBJ_STRING,sdsnew("*0\r\n"));
    shared.pong = createObject(OBJ_STRING,sdsnew("+PONG\r\n"));
    shared.queued = createObject(OBJ_STRING,sdsnew("+QUEUED\r\n"));
    shared.emptyscan = createObject(OBJ_STRING,sdsnew("*2\r\n$1\r\n0\r\n*0\r\n"));
    shared.wrongtypeerr = createObject(OBJ_STRING,sdsnew(
        "-WRONGTYPE Operation against a key holding the wrong kind of value\r\n"));
    shared.nokeyerr = createObject(OBJ_STRING,sdsnew(
        "-ERR no such key\r\n"));
    shared.syntaxerr = createObject(OBJ_STRING,sdsnew(
        "-ERR syntax error\r\n"));
    shared.sameobjecterr = createObject(OBJ_STRING,sdsnew(
        "-ERR source and destination objects are the same\r\n"));
    shared.outofrangeerr = createObject(OBJ_STRING,sdsnew(
        "-ERR index out of range\r\n"));
    shared.noscripterr = createObject(OBJ_STRING,sdsnew(
        "-NOSCRIPT No matching script. Please use EVAL.\r\n"));
    shared.loadingerr = createObject(OBJ_STRING,sdsnew(
        "-LOADING Redis is loading the dataset in memory\r\n"));
    shared.slowscripterr = createObject(OBJ_STRING,sdsnew(
        "-BUSY Redis is busy running a script. You can only call SCRIPT KILL or SHUTDOWN NOSAVE.\r\n"));
    shared.masterdownerr = createObject(OBJ_STRING,sdsnew(
        "-MASTERDOWN Link with MASTER is down and slave-serve-stale-data is set to 'no'.\r\n"));
    shared.bgsaveerr = createObject(OBJ_STRING,sdsnew(
        "-MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk. Commands that may modify the data set are disabled. Please check Redis logs for details about the error.\r\n"));
    shared.roslaveerr = createObject(OBJ_STRING,sdsnew(
        "-READONLY You can't write against a read only slave.\r\n"));
    shared.noautherr = createObject(OBJ_STRING,sdsnew(
        "-NOAUTH Authentication required.\r\n"));
    shared.oomerr = createObject(OBJ_STRING,sdsnew(
        "-OOM command not allowed when used memory > 'maxmemory'.\r\n"));
    shared.execaborterr = createObject(OBJ_STRING,sdsnew(
        "-EXECABORT Transaction discarded because of previous errors.\r\n"));
    shared.noreplicaserr = createObject(OBJ_STRING,sdsnew(
        "-NOREPLICAS Not enough good slaves to write.\r\n"));
    shared.busykeyerr = createObject(OBJ_STRING,sdsnew(
        "-BUSYKEY Target key name already exists.\r\n"));
    shared.space = createObject(OBJ_STRING,sdsnew(" "));
    shared.colon = createObject(OBJ_STRING,sdsnew(":"));
    shared.plus = createObject(OBJ_STRING,sdsnew("+"));

    for (j = 0; j < PROTO_SHARED_SELECT_CMDS; j++) {
        char dictid_str[64];
        int dictid_len;

        dictid_len = ll2string(dictid_str,sizeof(dictid_str),j);
        shared.select[j] = createObject(OBJ_STRING,
            sdscatprintf(sdsempty(),
                "*2\r\n$6\r\nSELECT\r\n$%d\r\n%s\r\n",
                dictid_len, dictid_str));
    }
    shared.messagebulk = createStringObject("$7\r\nmessage\r\n",13);
    shared.pmessagebulk = createStringObject("$8\r\npmessage\r\n",14);
    shared.subscribebulk = createStringObject("$9\r\nsubscribe\r\n",15);
    shared.unsubscribebulk = createStringObject("$11\r\nunsubscribe\r\n",18);
    shared.psubscribebulk = createStringObject("$10\r\npsubscribe\r\n",17);
    shared.punsubscribebulk = createStringObject("$12\r\npunsubscribe\r\n",19);
    shared.del = createStringObject("DEL",3);
    shared.rpop = createStringObject("RPOP",4);
    shared.lpop = createStringObject("LPOP",4);
    shared.lpush = createStringObject("LPUSH",5);
    for (j = 0; j < OBJ_SHARED_INTEGERS; j++) {
        shared.integers[j] = createObject(OBJ_STRING,(void*)(long)j);
        shared.integers[j]->encoding = OBJ_ENCODING_INT;
    }
    for (j = 0; j < OBJ_SHARED_BULKHDR_LEN; j++) {
        shared.mbulkhdr[j] = createObject(OBJ_STRING,
            sdscatprintf(sdsempty(),"*%d\r\n",j));
        shared.bulkhdr[j] = createObject(OBJ_STRING,
            sdscatprintf(sdsempty(),"$%d\r\n",j));
    }
    /* The following two shared objects, minstring and maxstrings, are not
     * actually used for their value but as a special object meaning
     * respectively the minimum possible string and the maximum possible
     * string in string comparisons for the ZRANGEBYLEX command. */
    shared.minstring = createStringObject("minstring",9);
    shared.maxstring = createStringObject("maxstring",9);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x60, %rsp
leaq 0x10c889(%rip), %rdi    # 0x13e288
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x14722b(%rip)    # 0x178c40
leaq 0x106151(%rip), %rdi    # 0x137b6d
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x147216(%rip)    # 0x178c48
leaq 0x10613a(%rip), %rdi    # 0x137b73
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x147201(%rip)    # 0x178c50
leaq 0x106124(%rip), %rdi    # 0x137b7a
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x1471ec(%rip)    # 0x178c58
leaq 0x10610e(%rip), %rdi    # 0x137b81
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x1471d7(%rip)    # 0x178c60
leaq 0x1060f6(%rip), %rdi    # 0x137b86
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x1471c2(%rip)    # 0x178c68
leaq 0x1060de(%rip), %rdi    # 0x137b8b
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x1471ad(%rip)    # 0x178c70
leaq 0x1060c7(%rip), %rdi    # 0x137b91
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x1471b0(%rip)    # 0x178c90
leaq 0x1060b0(%rip), %rdi    # 0x137b97
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x14719b(%rip)    # 0x178c98
leaq 0x1060b6(%rip), %rdi    # 0x137bba
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x14718e(%rip)    # 0x178ca8
leaq 0x10607c(%rip), %rdi    # 0x137b9d
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x147141(%rip)    # 0x178c78
leaq 0x106067(%rip), %rdi    # 0x137ba5
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x14714c(%rip)    # 0x178ca0
leaq 0x106054(%rip), %rdi    # 0x137baf
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x147217(%rip)    # 0x178d88
leaq 0x106047(%rip), %rdi    # 0x137bbf
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x147122(%rip)    # 0x178cb0
leaq 0x10606f(%rip), %rdi    # 0x137c04
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x14710d(%rip)    # 0x178cb8
leaq 0x106065(%rip), %rdi    # 0x137c17
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x1470f8(%rip)    # 0x178cc0
leaq 0x10605c(%rip), %rdi    # 0x137c2b
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x1470e3(%rip)    # 0x178cc8
leaq 0x106072(%rip), %rdi    # 0x137c5e
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x1470ce(%rip)    # 0x178cd0
leaq 0x10606f(%rip), %rdi    # 0x137c78
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x1470b9(%rip)    # 0x178cd8
leaq 0x106083(%rip), %rdi    # 0x137ca9
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x1470a4(%rip)    # 0x178ce0
leaq 0x106098(%rip), %rdi    # 0x137cdb
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x14708f(%rip)    # 0x178ce8
leaq 0x1060d5(%rip), %rdi    # 0x137d35
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x147082(%rip)    # 0x178cf8
leaq 0x10610a(%rip), %rdi    # 0x137d87
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x14705d(%rip)    # 0x178cf0
leaq 0x1061ba(%rip), %rdi    # 0x137e54
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x147050(%rip)    # 0x178d00
leaq 0x1061d4(%rip), %rdi    # 0x137e8b
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x147043(%rip)    # 0x178d10
leaq 0x1061da(%rip), %rdi    # 0x137eae
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x14703e(%rip)    # 0x178d28
leaq 0x1061f8(%rip), %rdi    # 0x137ee9
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x147001(%rip)    # 0x178d08
leaq 0x10621a(%rip), %rdi    # 0x137f28
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x146ff4(%rip)    # 0x178d18
leaq 0x10622c(%rip), %rdi    # 0x137f57
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x146fdf(%rip)    # 0x178d20
leaq 0x10d401(%rip), %rdi    # 0x13f149
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x146f22(%rip)    # 0x178c80
leaq 0x119b33(%rip), %rdi    # 0x14b898
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x146f0d(%rip)    # 0x178c88
leaq 0x106200(%rip), %rdi    # 0x137f82
callq 0x38510
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, 0x146f98(%rip)    # 0x178d30
movl $0x0, -0x4(%rbp)
cmpl $0xa, -0x4(%rbp)
jge 0x31e02
leaq -0x50(%rbp), %rdi
movslq -0x4(%rbp), %rdx
movl $0x40, %esi
callq 0x477e0
movl %eax, -0x54(%rbp)
callq 0x384f0
movq %rax, %rdi
movl -0x54(%rbp), %edx
leaq -0x50(%rbp), %rcx
leaq 0x1061b4(%rip), %rsi    # 0x137f84
movb $0x0, %al
callq 0x395b0
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, %rdx
movslq -0x4(%rbp), %rcx
leaq 0x146e51(%rip), %rax    # 0x178c40
movq %rdx, 0x160(%rax,%rcx,8)
movl -0x4(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x4(%rbp)
jmp 0x31d9f
leaq 0x106195(%rip), %rdi    # 0x137f9e
movl $0xd, %esi
callq 0x486a0
movq %rax, 0x146f1e(%rip)    # 0x178d38
leaq 0x10618b(%rip), %rdi    # 0x137fac
movl $0xe, %esi
callq 0x486a0
movq %rax, 0x146f0e(%rip)    # 0x178d40
leaq 0x106182(%rip), %rdi    # 0x137fbb
movl $0xf, %esi
callq 0x486a0
movq %rax, 0x146efe(%rip)    # 0x178d48
leaq 0x10617a(%rip), %rdi    # 0x137fcb
movl $0x12, %esi
callq 0x486a0
movq %rax, 0x146eee(%rip)    # 0x178d50
leaq 0x106175(%rip), %rdi    # 0x137fde
movl $0x11, %esi
callq 0x486a0
movq %rax, 0x146ede(%rip)    # 0x178d58
leaq 0x10616f(%rip), %rdi    # 0x137ff0
movl $0x13, %esi
callq 0x486a0
movq %rax, 0x146ece(%rip)    # 0x178d60
leaq 0x10616b(%rip), %rdi    # 0x138004
movl $0x3, %esi
callq 0x486a0
movq %rax, 0x146ebe(%rip)    # 0x178d68
leaq 0x106157(%rip), %rdi    # 0x138008
movl $0x4, %esi
callq 0x486a0
movq %rax, 0x146eae(%rip)    # 0x178d70
leaq 0x106144(%rip), %rdi    # 0x13800d
movl $0x4, %esi
callq 0x486a0
movq %rax, 0x146e9e(%rip)    # 0x178d78
leaq 0x106131(%rip), %rdi    # 0x138012
movl $0x5, %esi
callq 0x486a0
movq %rax, 0x146e8e(%rip)    # 0x178d80
movl $0x0, -0x4(%rbp)
cmpl $0x2710, -0x4(%rbp)     # imm = 0x2710
jge 0x31f4e
movslq -0x4(%rbp), %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, %rdx
movslq -0x4(%rbp), %rcx
leaq 0x146d25(%rip), %rax    # 0x178c40
movq %rdx, 0x1b0(%rax,%rcx,8)
movslq -0x4(%rbp), %rcx
leaq 0x146d12(%rip), %rax    # 0x178c40
movq 0x1b0(%rax,%rcx,8), %rax
movl (%rax), %ecx
andl $0xffffff0f, %ecx       # imm = 0xFFFFFF0F
orl $0x10, %ecx
movl %ecx, (%rax)
movl -0x4(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x4(%rbp)
jmp 0x31ef9
movl $0x0, -0x4(%rbp)
cmpl $0x20, -0x4(%rbp)
jge 0x31fdf
callq 0x384f0
movq %rax, %rdi
movl -0x4(%rbp), %edx
leaq 0x1060a7(%rip), %rsi    # 0x138018
movb $0x0, %al
callq 0x395b0
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, %rdx
movslq -0x4(%rbp), %rcx
leaq 0x146cb0(%rip), %rax    # 0x178c40
movq %rdx, 0x13a30(%rax,%rcx,8)
callq 0x384f0
movq %rax, %rdi
movl -0x4(%rbp), %edx
leaq 0x106074(%rip), %rsi    # 0x13801e
movb $0x0, %al
callq 0x395b0
movq %rax, %rsi
xorl %edi, %edi
callq 0x48480
movq %rax, %rdx
movslq -0x4(%rbp), %rcx
leaq 0x146c77(%rip), %rax    # 0x178c40
movq %rdx, 0x13b30(%rax,%rcx,8)
movl -0x4(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x4(%rbp)
jmp 0x31f55
leaq 0x10603e(%rip), %rdi    # 0x138024
movl $0x9, %esi
callq 0x486a0
movq %rax, 0x146d99(%rip)    # 0x178d90
leaq 0x106030(%rip), %rdi    # 0x13802e
movl $0x9, %esi
callq 0x486a0
movq %rax, 0x146d89(%rip)    # 0x178d98
addq $0x60, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)