#define NULL ((void *)0)
typedef unsigned long size_t; // Customize by platform.
typedef long intptr_t;
typedef unsigned long uintptr_t;
typedef long scalar_t__; // Either arithmetic or pointer type.
/* By default, we understand bool (as a convenience). */
typedef int bool;
#define false 0
#define true 1

/* Forward declarations */

/* Type definitions */

/* Variables and functions */
int /*<<< orphan*/ addchordname(char *, int, int *);
void setup_chordnames() {
  static int list_Maj[3] = {0, 4, 7};
  static int list_m[3] = {0, 3, 7};
  static int list_7[4] = {0, 4, 7, 10};
  static int list_m7[4] = {0, 3, 7, 10};
  static int list_m7b5[4] = {0, 3, 6, 10};
  static int list_maj7[4] = {0, 4, 7, 11};
  static int list_M7[4] = {0, 4, 7, 11};
  static int list_6[4] = {0, 4, 7, 9};
  static int list_m6[4] = {0, 3, 7, 9};
  static int list_aug[3] = {0, 4, 8};
  static int list_plus[3] = {0, 4, 8};
  static int list_aug7[4] = {0, 4, 8, 10};
  static int list_dim[3] = {0, 3, 6};
  static int list_dim7[4] = {0, 3, 6, 9};
  static int list_9[5] = {0, 4, 7, 10, 2};
  static int list_m9[5] = {0, 3, 7, 10, 2};
  static int list_maj9[5] = {0, 4, 7, 11, 2};
  static int list_M9[5] = {0, 4, 7, 11, 2};
  static int list_11[6] = {0, 4, 7, 10, 2, 5};
  static int list_dim9[5] = {0, 3, 6, 9, 13};
  static int list_sus[3] = {0, 5, 7};
  static int list_sus4[3] = {0, 4, 7};
  static int list_sus9[3] = {0, 2, 7};
  static int list_7sus4[4] = {0, 5, 7, 10};
  static int list_7sus9[4] = {0, 2, 7, 10};
  static int list_5[2] = {0, 7};
  addchordname("", 3, list_Maj);
  addchordname("m", 3, list_m);
  addchordname("7", 4, list_7);
  addchordname("m7", 4, list_m7);
  addchordname("m7b5", 4, list_m7b5);
  addchordname("maj7", 4, list_maj7);
  addchordname("M7", 4, list_M7);
  addchordname("6", 4, list_6);
  addchordname("m6", 4, list_m6);
  addchordname("aug", 3, list_aug);
  addchordname("+", 3, list_plus);
  addchordname("aug7", 4, list_aug7);
  addchordname("dim", 3, list_dim);
  addchordname("dim7", 4, list_dim7);
  addchordname("9", 5, list_9);
  addchordname("m9", 5, list_m9);
  addchordname("maj9", 5, list_maj9);
  addchordname("M9", 5, list_M9);
  addchordname("11", 6, list_11);
  addchordname("dim9", 5, list_dim9);
  addchordname("sus", 3, list_sus);
  addchordname("sus4", 3, list_sus4);
  addchordname("sus9", 3, list_sus9);
  addchordname("sus2", 3, list_sus9);
  addchordname("7sus2", 4, list_7sus9);
  addchordname("7sus4", 4, list_7sus4);
  addchordname("7sus9", 4, list_7sus9);
  addchordname("5", 2, list_5);
}


x86 assembly (clang, -O0):
<setup_chordnames>:
push   %rbp
mov    %rsp,%rbp
lea    0xefa(%rip),%rdi
mov    $0x3,%esi
lea    0x2f09(%rip),%rdx
call   1030 <addchordname@plt>
lea    0xeea(%rip),%rdi
mov    $0x3,%esi
lea    0x2efd(%rip),%rdx
call   1030 <addchordname@plt>
lea    0xec0(%rip),%rdi
mov    $0x4,%esi
lea    0x2ef9(%rip),%rdx
call   1030 <addchordname@plt>
lea    0xebe(%rip),%rdi
mov    $0x4,%esi
lea    0x2ef1(%rip),%rdx
call   1030 <addchordname@plt>
lea    0xe85(%rip),%rdi
mov    $0x4,%esi
lea    0x2ee9(%rip),%rdx
call   1030 <addchordname@plt>
lea    0xe72(%rip),%rdi
mov    $0x4,%esi
lea    0x2ee1(%rip),%rdx
call   1030 <addchordname@plt>
lea    0xe5f(%rip),%rdi
mov    $0x4,%esi
lea    0x2ed9(%rip),%rdx
call   1030 <addchordname@plt>
lea    0xe4b(%rip),%rdi
mov    $0x4,%esi
lea    0x2ed1(%rip),%rdx
call   1030 <addchordname@plt>
lea    0xe32(%rip),%rdi
mov    $0x4,%esi
lea    0x2ec9(%rip),%rdx
call   1030 <addchordname@plt>
lea    0xe1d(%rip),%rdi
mov    $0x3,%esi
lea    0x2ec1(%rip),%rdx
call   1030 <addchordname@plt>
lea    0xe09(%rip),%rdi
mov    $0x3,%esi
lea    0x2eb5(%rip),%rdx
call   1030 <addchordname@plt>
lea    0xdf3(%rip),%rdi
mov    $0x4,%esi
lea    0x2eb1(%rip),%rdx
call   1030 <addchordname@plt>
lea    0xde0(%rip),%rdi
mov    $0x3,%esi
lea    0x2ea9(%rip),%rdx
call   1030 <addchordname@plt>
lea    0xdcc(%rip),%rdi
mov    $0x4,%esi
lea    0x2ea1(%rip),%rdx
call   1030 <addchordname@plt>
lea    0xdbf(%rip),%rdi
mov    $0x5,%esi
lea    0x2e99(%rip),%rdx
call   1030 <addchordname@plt>
lea    0xdae(%rip),%rdi
mov    $0x5,%esi
lea    0x2ea1(%rip),%rdx
call   1030 <addchordname@plt>
lea    0xd89(%rip),%rdi
mov    $0x5,%esi
lea    0x2ea9(%rip),%rdx
call   1030 <addchordname@plt>
lea    0xd76(%rip),%rdi
mov    $0x5,%esi
lea    0x2eb1(%rip),%rdx
call   1030 <addchordname@plt>
lea    0xd61(%rip),%rdi
mov    $0x6,%esi
lea    0x2eb9(%rip),%rdx
call   1030 <addchordname@plt>
lea    0xd4c(%rip),%rdi
mov    $0x5,%esi
lea    0x2ec1(%rip),%rdx
call   1030 <addchordname@plt>
lea    0xd39(%rip),%rdi
mov    $0x3,%esi
lea    0x2ebd(%rip),%rdx
call   1030 <addchordname@plt>
lea    0xd2c(%rip),%rdi
mov    $0x3,%esi
lea    0x2eb1(%rip),%rdx
call   1030 <addchordname@plt>
lea    0xd1a(%rip),%rdi
mov    $0x3,%esi
lea    0x2ea5(%rip),%rdx
call   1030 <addchordname@plt>
lea    0xcf6(%rip),%rdi
mov    $0x3,%esi
lea    0x2e8d(%rip),%rdx
call   1030 <addchordname@plt>
lea    0xcdd(%rip),%rdi
mov    $0x4,%esi
lea    0x2e99(%rip),%rdx
call   1030 <addchordname@plt>
lea    0xccb(%rip),%rdi
mov    $0x4,%esi
lea    0x2e71(%rip),%rdx
call   1030 <addchordname@plt>
lea    0xcb9(%rip),%rdi
mov    $0x4,%esi
lea    0x2e69(%rip),%rdx
call   1030 <addchordname@plt>
lea    0xc60(%rip),%rdi
mov    $0x2,%esi
lea    0x2e61(%rip),%rdx
call   1030 <addchordname@plt>
pop    %rbp
ret

x86 assembly (clang, -O2):
<setup_chordnames>:
push   %rbx
lea    0xefd(%rip),%rdi
lea    0x2f11(%rip),%rdx
mov    $0x3,%esi
call   1030 <addchordname@plt>
lea    0xeed(%rip),%rdi
lea    0x2f05(%rip),%rdx
mov    $0x3,%esi
call   1030 <addchordname@plt>
lea    0xec3(%rip),%rdi
lea    0x2f01(%rip),%rdx
mov    $0x4,%esi
call   1030 <addchordname@plt>
lea    0xec1(%rip),%rdi
lea    0x2ef9(%rip),%rdx
mov    $0x4,%esi
call   1030 <addchordname@plt>
lea    0xe88(%rip),%rdi
lea    0x2ef1(%rip),%rdx
mov    $0x4,%esi
call   1030 <addchordname@plt>
lea    0xe75(%rip),%rdi
lea    0x2ee9(%rip),%rdx
mov    $0x4,%esi
call   1030 <addchordname@plt>
lea    0xe62(%rip),%rdi
lea    0x2ee1(%rip),%rdx
mov    $0x4,%esi
call   1030 <addchordname@plt>
lea    0xe4e(%rip),%rdi
lea    0x2ed9(%rip),%rdx
mov    $0x4,%esi
call   1030 <addchordname@plt>
lea    0xe35(%rip),%rdi
lea    0x2ed1(%rip),%rdx
mov    $0x4,%esi
call   1030 <addchordname@plt>
lea    0xe20(%rip),%rdi
lea    0x2ec9(%rip),%rdx
mov    $0x3,%esi
call   1030 <addchordname@plt>
lea    0xe0c(%rip),%rdi
lea    0x2ebd(%rip),%rdx
mov    $0x3,%esi
call   1030 <addchordname@plt>
lea    0xdf6(%rip),%rdi
lea    0x2eb9(%rip),%rdx
mov    $0x4,%esi
call   1030 <addchordname@plt>
lea    0xde3(%rip),%rdi
lea    0x2eb1(%rip),%rdx
mov    $0x3,%esi
call   1030 <addchordname@plt>
lea    0xdcf(%rip),%rdi
lea    0x2ea9(%rip),%rdx
mov    $0x4,%esi
call   1030 <addchordname@plt>
lea    0xdc2(%rip),%rdi
lea    0x2ea1(%rip),%rdx
mov    $0x5,%esi
call   1030 <addchordname@plt>
lea    0xdb1(%rip),%rdi
lea    0x2ea9(%rip),%rdx
mov    $0x5,%esi
call   1030 <addchordname@plt>
lea    0xd8c(%rip),%rdi
lea    0x2eb1(%rip),%rdx
mov    $0x5,%esi
call   1030 <addchordname@plt>
lea    0xd79(%rip),%rdi
lea    0x2eb9(%rip),%rdx
mov    $0x5,%esi
call   1030 <addchordname@plt>
lea    0xd64(%rip),%rdi
lea    0x2ec1(%rip),%rdx
mov    $0x6,%esi
call   1030 <addchordname@plt>
lea    0xd4f(%rip),%rdi
lea    0x2ec9(%rip),%rdx
mov    $0x5,%esi
call   1030 <addchordname@plt>
lea    0xd3c(%rip),%rdi
lea    0x2ec5(%rip),%rdx
mov    $0x3,%esi
call   1030 <addchordname@plt>
lea    0xd2f(%rip),%rdi
lea    0x2eb9(%rip),%rdx
mov    $0x3,%esi
call   1030 <addchordname@plt>
lea    0xd1d(%rip),%rdi
lea    0x2ead(%rip),%rbx
mov    $0x3,%esi
mov    %rbx,%rdx
call   1030 <addchordname@plt>
lea    0xcf6(%rip),%rdi
mov    $0x3,%esi
mov    %rbx,%rdx
call   1030 <addchordname@plt>
lea    0xce1(%rip),%rdi
lea    0x2ea2(%rip),%rbx
mov    $0x4,%esi
mov    %rbx,%rdx
call   1030 <addchordname@plt>
lea    0xccc(%rip),%rdi
lea    0x2e77(%rip),%rdx
mov    $0x4,%esi
call   1030 <addchordname@plt>
lea    0xcba(%rip),%rdi
mov    $0x4,%esi
mov    %rbx,%rdx
call   1030 <addchordname@plt>
lea    0xc65(%rip),%rdi
lea    0x2e6b(%rip),%rdx
mov    $0x2,%esi
pop    %rbx
jmp    1030 <addchordname@plt>

LLVM IR (-O0):
@setup_chordnames.list_Maj = internal global [3 x i32] [i32 0, i32 4, i32 7]
@setup_chordnames.list_m = internal global [3 x i32] [i32 0, i32 3, i32 7]
@setup_chordnames.list_7 = internal global [4 x i32] [i32 0, i32 4, i32 7, i32 10]
@setup_chordnames.list_m7 = internal global [4 x i32] [i32 0, i32 3, i32 7, i32 10]
@setup_chordnames.list_m7b5 = internal global [4 x i32] [i32 0, i32 3, i32 6, i32 10]
@setup_chordnames.list_maj7 = internal global [4 x i32] [i32 0, i32 4, i32 7, i32 11]
@setup_chordnames.list_M7 = internal global [4 x i32] [i32 0, i32 4, i32 7, i32 11]
@setup_chordnames.list_6 = internal global [4 x i32] [i32 0, i32 4, i32 7, i32 9]
@setup_chordnames.list_m6 = internal global [4 x i32] [i32 0, i32 3, i32 7, i32 9]
@setup_chordnames.list_aug = internal global [3 x i32] [i32 0, i32 4, i32 8]
@setup_chordnames.list_plus = internal global [3 x i32] [i32 0, i32 4, i32 8]
@setup_chordnames.list_aug7 = internal global [4 x i32] [i32 0, i32 4, i32 8, i32 10]
@setup_chordnames.list_dim = internal global [3 x i32] [i32 0, i32 3, i32 6]
@setup_chordnames.list_dim7 = internal global [4 x i32] [i32 0, i32 3, i32 6, i32 9]
@setup_chordnames.list_9 = internal global [5 x i32] [i32 0, i32 4, i32 7, i32 10, i32 2]
@setup_chordnames.list_m9 = internal global [5 x i32] [i32 0, i32 3, i32 7, i32 10, i32 2]
@setup_chordnames.list_maj9 = internal global [5 x i32] [i32 0, i32 4, i32 7, i32 11, i32 2]
@setup_chordnames.list_M9 = internal global [5 x i32] [i32 0, i32 4, i32 7, i32 11, i32 2]
@setup_chordnames.list_11 = internal global [6 x i32] [i32 0, i32 4, i32 7, i32 10, i32 2, i32 5]
@setup_chordnames.list_dim9 = internal global [5 x i32] [i32 0, i32 3, i32 6, i32 9, i32 13]
@setup_chordnames.list_sus = internal global [3 x i32] [i32 0, i32 5, i32 7]
@setup_chordnames.list_sus4 = internal global [3 x i32] [i32 0, i32 4, i32 7]
@setup_chordnames.list_sus9 = internal global [3 x i32] [i32 0, i32 2, i32 7]
@setup_chordnames.list_7sus4 = internal global [4 x i32] [i32 0, i32 5, i32 7, i32 10]
@setup_chordnames.list_7sus9 = internal global [4 x i32] [i32 0, i32 2, i32 7, i32 10]
@setup_chordnames.list_5 = internal global [2 x i32] [i32 0, i32 7]
@.str = [1 x i8] zeroinitializer
@.str.1 = [2 x i8] c"m\00"
@.str.2 = [2 x i8] c"7\00"
@.str.3 = [3 x i8] c"m7\00"
@.str.4 = [5 x i8] c"m7b5\00"
@.str.5 = [5 x i8] c"maj7\00"
@.str.6 = [3 x i8] c"M7\00"
@.str.7 = [2 x i8] c"6\00"
@.str.8 = [3 x i8] c"m6\00"
@.str.9 = [4 x i8] c"aug\00"
@.str.10 = [2 x i8] c"+\00"
@.str.11 = [5 x i8] c"aug7\00"
@.str.12 = [4 x i8] c"dim\00"
@.str.13 = [5 x i8] c"dim7\00"
@.str.14 = [2 x i8] c"9\00"
@.str.15 = [3 x i8] c"m9\00"
@.str.16 = [5 x i8] c"maj9\00"
@.str.17 = [3 x i8] c"M9\00"
@.str.18 = [3 x i8] c"11\00"
@.str.19 = [5 x i8] c"dim9\00"
@.str.20 = [4 x i8] c"sus\00"
@.str.21 = [5 x i8] c"sus4\00"
@.str.22 = [5 x i8] c"sus9\00"
@.str.23 = [5 x i8] c"sus2\00"
@.str.24 = [6 x i8] c"7sus2\00"
@.str.25 = [6 x i8] c"7sus4\00"
@.str.26 = [6 x i8] c"7sus9\00"
@.str.27 = [2 x i8] c"5\00"
define void @setup_chordnames() {
%1 = call i32 @addchordname(i8* getelementptr inbounds ([1 x i8], [1 x i8]* @.str, i64 0, i64 0), i32 3, i32* getelementptr inbounds ([3 x i32], [3 x i32]* @setup_chordnames.list_Maj, i64 0, i64 0))
%2 = call i32 @addchordname(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.1, i64 0, i64 0), i32 3, i32* getelementptr inbounds ([3 x i32], [3 x i32]* @setup_chordnames.list_m, i64 0, i64 0))
%3 = call i32 @addchordname(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.2, i64 0, i64 0), i32 4, i32* getelementptr inbounds ([4 x i32], [4 x i32]* @setup_chordnames.list_7, i64 0, i64 0))
%4 = call i32 @addchordname(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.3, i64 0, i64 0), i32 4, i32* getelementptr inbounds ([4 x i32], [4 x i32]* @setup_chordnames.list_m7, i64 0, i64 0))
%5 = call i32 @addchordname(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.4, i64 0, i64 0), i32 4, i32* getelementptr inbounds ([4 x i32], [4 x i32]* @setup_chordnames.list_m7b5, i64 0, i64 0))
%6 = call i32 @addchordname(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.5, i64 0, i64 0), i32 4, i32* getelementptr inbounds ([4 x i32], [4 x i32]* @setup_chordnames.list_maj7, i64 0, i64 0))
%7 = call i32 @addchordname(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.6, i64 0, i64 0), i32 4, i32* getelementptr inbounds ([4 x i32], [4 x i32]* @setup_chordnames.list_M7, i64 0, i64 0))
%8 = call i32 @addchordname(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.7, i64 0, i64 0), i32 4, i32* getelementptr inbounds ([4 x i32], [4 x i32]* @setup_chordnames.list_6, i64 0, i64 0))
%9 = call i32 @addchordname(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.8, i64 0, i64 0), i32 4, i32* getelementptr inbounds ([4 x i32], [4 x i32]* @setup_chordnames.list_m6, i64 0, i64 0))
%10 = call i32 @addchordname(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.9, i64 0, i64 0), i32 3, i32* getelementptr inbounds ([3 x i32], [3 x i32]* @setup_chordnames.list_aug, i64 0, i64 0))
%11 = call i32 @addchordname(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.10, i64 0, i64 0), i32 3, i32* getelementptr inbounds ([3 x i32], [3 x i32]* @setup_chordnames.list_plus, i64 0, i64 0))
%12 = call i32 @addchordname(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.11, i64 0, i64 0), i32 4, i32* getelementptr inbounds ([4 x i32], [4 x i32]* @setup_chordnames.list_aug7, i64 0, i64 0))
%13 = call i32 @addchordname(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.12, i64 0, i64 0), i32 3, i32* getelementptr inbounds ([3 x i32], [3 x i32]* @setup_chordnames.list_dim, i64 0, i64 0))
%14 = call i32 @addchordname(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.13, i64 0, i64 0), i32 4, i32* getelementptr inbounds ([4 x i32], [4 x i32]* @setup_chordnames.list_dim7, i64 0, i64 0))
%15 = call i32 @addchordname(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.14, i64 0, i64 0), i32 5, i32* getelementptr inbounds ([5 x i32], [5 x i32]* @setup_chordnames.list_9, i64 0, i64 0))
%16 = call i32 @addchordname(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.15, i64 0, i64 0), i32 5, i32* getelementptr inbounds ([5 x i32], [5 x i32]* @setup_chordnames.list_m9, i64 0, i64 0))
%17 = call i32 @addchordname(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.16, i64 0, i64 0), i32 5, i32* getelementptr inbounds ([5 x i32], [5 x i32]* @setup_chordnames.list_maj9, i64 0, i64 0))
%18 = call i32 @addchordname(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.17, i64 0, i64 0), i32 5, i32* getelementptr inbounds ([5 x i32], [5 x i32]* @setup_chordnames.list_M9, i64 0, i64 0))
%19 = call i32 @addchordname(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.18, i64 0, i64 0), i32 6, i32* getelementptr inbounds ([6 x i32], [6 x i32]* @setup_chordnames.list_11, i64 0, i64 0))
%20 = call i32 @addchordname(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.19, i64 0, i64 0), i32 5, i32* getelementptr inbounds ([5 x i32], [5 x i32]* @setup_chordnames.list_dim9, i64 0, i64 0))
%21 = call i32 @addchordname(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.20, i64 0, i64 0), i32 3, i32* getelementptr inbounds ([3 x i32], [3 x i32]* @setup_chordnames.list_sus, i64 0, i64 0))
%22 = call i32 @addchordname(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.21, i64 0, i64 0), i32 3, i32* getelementptr inbounds ([3 x i32], [3 x i32]* @setup_chordnames.list_sus4, i64 0, i64 0))
%23 = call i32 @addchordname(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.22, i64 0, i64 0), i32 3, i32* getelementptr inbounds ([3 x i32], [3 x i32]* @setup_chordnames.list_sus9, i64 0, i64 0))
%24 = call i32 @addchordname(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.23, i64 0, i64 0), i32 3, i32* getelementptr inbounds ([3 x i32], [3 x i32]* @setup_chordnames.list_sus9, i64 0, i64 0))
%25 = call i32 @addchordname(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.24, i64 0, i64 0), i32 4, i32* getelementptr inbounds ([4 x i32], [4 x i32]* @setup_chordnames.list_7sus9, i64 0, i64 0))
%26 = call i32 @addchordname(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.25, i64 0, i64 0), i32 4, i32* getelementptr inbounds ([4 x i32], [4 x i32]* @setup_chordnames.list_7sus4, i64 0, i64 0))
%27 = call i32 @addchordname(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.26, i64 0, i64 0), i32 4, i32* getelementptr inbounds ([4 x i32], [4 x i32]* @setup_chordnames.list_7sus9, i64 0, i64 0))
%28 = call i32 @addchordname(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.27, i64 0, i64 0), i32 2, i32* getelementptr inbounds ([2 x i32], [2 x i32]* @setup_chordnames.list_5, i64 0, i64 0))
ret void
}

LLVM IR (-O2):
@setup_chordnames.list_Maj = internal global [3 x i32] [i32 0, i32 4, i32 7]
@setup_chordnames.list_m = internal global [3 x i32] [i32 0, i32 3, i32 7]
@setup_chordnames.list_7 = internal global [4 x i32] [i32 0, i32 4, i32 7, i32 10]
@setup_chordnames.list_m7 = internal global [4 x i32] [i32 0, i32 3, i32 7, i32 10]
@setup_chordnames.list_m7b5 = internal global [4 x i32] [i32 0, i32 3, i32 6, i32 10]
@setup_chordnames.list_maj7 = internal global [4 x i32] [i32 0, i32 4, i32 7, i32 11]
@setup_chordnames.list_M7 = internal global [4 x i32] [i32 0, i32 4, i32 7, i32 11]
@setup_chordnames.list_6 = internal global [4 x i32] [i32 0, i32 4, i32 7, i32 9]
@setup_chordnames.list_m6 = internal global [4 x i32] [i32 0, i32 3, i32 7, i32 9]
@setup_chordnames.list_aug = internal global [3 x i32] [i32 0, i32 4, i32 8]
@setup_chordnames.list_plus = internal global [3 x i32] [i32 0, i32 4, i32 8]
@setup_chordnames.list_aug7 = internal global [4 x i32] [i32 0, i32 4, i32 8, i32 10]
@setup_chordnames.list_dim = internal global [3 x i32] [i32 0, i32 3, i32 6]
@setup_chordnames.list_dim7 = internal global [4 x i32] [i32 0, i32 3, i32 6, i32 9]
@setup_chordnames.list_9 = internal global [5 x i32] [i32 0, i32 4, i32 7, i32 10, i32 2]
@setup_chordnames.list_m9 = internal global [5 x i32] [i32 0, i32 3, i32 7, i32 10, i32 2]
@setup_chordnames.list_maj9 = internal global [5 x i32] [i32 0, i32 4, i32 7, i32 11, i32 2]
@setup_chordnames.list_M9 = internal global [5 x i32] [i32 0, i32 4, i32 7, i32 11, i32 2]
@setup_chordnames.list_11 = internal global [6 x i32] [i32 0, i32 4, i32 7, i32 10, i32 2, i32 5]
@setup_chordnames.list_dim9 = internal global [5 x i32] [i32 0, i32 3, i32 6, i32 9, i32 13]
@setup_chordnames.list_sus = internal global [3 x i32] [i32 0, i32 5, i32 7]
@setup_chordnames.list_sus4 = internal global [3 x i32] [i32 0, i32 4, i32 7]
@setup_chordnames.list_sus9 = internal global [3 x i32] [i32 0, i32 2, i32 7]
@setup_chordnames.list_7sus4 = internal global [4 x i32] [i32 0, i32 5, i32 7, i32 10]
@setup_chordnames.list_7sus9 = internal global [4 x i32] [i32 0, i32 2, i32 7, i32 10]
@setup_chordnames.list_5 = internal global [2 x i32] [i32 0, i32 7]
@.str = [1 x i8] zeroinitializer
@.str.1 = [2 x i8] c"m\00"
@.str.2 = [2 x i8] c"7\00"
@.str.3 = [3 x i8] c"m7\00"
@.str.4 = [5 x i8] c"m7b5\00"
@.str.5 = [5 x i8] c"maj7\00"
@.str.6 = [3 x i8] c"M7\00"
@.str.7 = [2 x i8] c"6\00"
@.str.8 = [3 x i8] c"m6\00"
@.str.9 = [4 x i8] c"aug\00"
@.str.10 = [2 x i8] c"+\00"
@.str.11 = [5 x i8] c"aug7\00"
@.str.12 = [4 x i8] c"dim\00"
@.str.13 = [5 x i8] c"dim7\00"
@.str.14 = [2 x i8] c"9\00"
@.str.15 = [3 x i8] c"m9\00"
@.str.16 = [5 x i8] c"maj9\00"
@.str.17 = [3 x i8] c"M9\00"
@.str.18 = [3 x i8] c"11\00"
@.str.19 = [5 x i8] c"dim9\00"
@.str.20 = [4 x i8] c"sus\00"
@.str.21 = [5 x i8] c"sus4\00"
@.str.22 = [5 x i8] c"sus9\00"
@.str.23 = [5 x i8] c"sus2\00"
@.str.24 = [6 x i8] c"7sus2\00"
@.str.25 = [6 x i8] c"7sus4\00"
@.str.26 = [6 x i8] c"7sus9\00"
@.str.27 = [2 x i8] c"5\00"
define void @setup_chordnames() {
%1 = tail call i32 @addchordname(i8* getelementptr inbounds ([1 x i8], [1 x i8]* @.str, i64 0, i64 0), i32 3, i32* getelementptr inbounds ([3 x i32], [3 x i32]* @setup_chordnames.list_Maj, i64 0, i64 0))
%2 = tail call i32 @addchordname(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.1, i64 0, i64 0), i32 3, i32* getelementptr inbounds ([3 x i32], [3 x i32]* @setup_chordnames.list_m, i64 0, i64 0))
%3 = tail call i32 @addchordname(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.2, i64 0, i64 0), i32 4, i32* getelementptr inbounds ([4 x i32], [4 x i32]* @setup_chordnames.list_7, i64 0, i64 0))
%4 = tail call i32 @addchordname(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.3, i64 0, i64 0), i32 4, i32* getelementptr inbounds ([4 x i32], [4 x i32]* @setup_chordnames.list_m7, i64 0, i64 0))
%5 = tail call i32 @addchordname(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.4, i64 0, i64 0), i32 4, i32* getelementptr inbounds ([4 x i32], [4 x i32]* @setup_chordnames.list_m7b5, i64 0, i64 0))
%6 = tail call i32 @addchordname(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.5, i64 0, i64 0), i32 4, i32* getelementptr inbounds ([4 x i32], [4 x i32]* @setup_chordnames.list_maj7, i64 0, i64 0))
%7 = tail call i32 @addchordname(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.6, i64 0, i64 0), i32 4, i32* getelementptr inbounds ([4 x i32], [4 x i32]* @setup_chordnames.list_M7, i64 0, i64 0))
%8 = tail call i32 @addchordname(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.7, i64 0, i64 0), i32 4, i32* getelementptr inbounds ([4 x i32], [4 x i32]* @setup_chordnames.list_6, i64 0, i64 0))
%9 = tail call i32 @addchordname(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.8, i64 0, i64 0), i32 4, i32* getelementptr inbounds ([4 x i32], [4 x i32]* @setup_chordnames.list_m6, i64 0, i64 0))
%10 = tail call i32 @addchordname(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.9, i64 0, i64 0), i32 3, i32* getelementptr inbounds ([3 x i32], [3 x i32]* @setup_chordnames.list_aug, i64 0, i64 0))
%11 = tail call i32 @addchordname(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.10, i64 0, i64 0), i32 3, i32* getelementptr inbounds ([3 x i32], [3 x i32]* @setup_chordnames.list_plus, i64 0, i64 0))
%12 = tail call i32 @addchordname(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.11, i64 0, i64 0), i32 4, i32* getelementptr inbounds ([4 x i32], [4 x i32]* @setup_chordnames.list_aug7, i64 0, i64 0))
%13 = tail call i32 @addchordname(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.12, i64 0, i64 0), i32 3, i32* getelementptr inbounds ([3 x i32], [3 x i32]* @setup_chordnames.list_dim, i64 0, i64 0))
%14 = tail call i32 @addchordname(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.13, i64 0, i64 0), i32 4, i32* getelementptr inbounds ([4 x i32], [4 x i32]* @setup_chordnames.list_dim7, i64 0, i64 0))
%15 = tail call i32 @addchordname(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.14, i64 0, i64 0), i32 5, i32* getelementptr inbounds ([5 x i32], [5 x i32]* @setup_chordnames.list_9, i64 0, i64 0))
%16 = tail call i32 @addchordname(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.15, i64 0, i64 0), i32 5, i32* getelementptr inbounds ([5 x i32], [5 x i32]* @setup_chordnames.list_m9, i64 0, i64 0))
%17 = tail call i32 @addchordname(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.16, i64 0, i64 0), i32 5, i32* getelementptr inbounds ([5 x i32], [5 x i32]* @setup_chordnames.list_maj9, i64 0, i64 0))
%18 = tail call i32 @addchordname(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.17, i64 0, i64 0), i32 5, i32* getelementptr inbounds ([5 x i32], [5 x i32]* @setup_chordnames.list_M9, i64 0, i64 0))
%19 = tail call i32 @addchordname(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.18, i64 0, i64 0), i32 6, i32* getelementptr inbounds ([6 x i32], [6 x i32]* @setup_chordnames.list_11, i64 0, i64 0))
%20 = tail call i32 @addchordname(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.19, i64 0, i64 0), i32 5, i32* getelementptr inbounds ([5 x i32], [5 x i32]* @setup_chordnames.list_dim9, i64 0, i64 0))
%21 = tail call i32 @addchordname(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.20, i64 0, i64 0), i32 3, i32* getelementptr inbounds ([3 x i32], [3 x i32]* @setup_chordnames.list_sus, i64 0, i64 0))
%22 = tail call i32 @addchordname(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.21, i64 0, i64 0), i32 3, i32* getelementptr inbounds ([3 x i32], [3 x i32]* @setup_chordnames.list_sus4, i64 0, i64 0))
%23 = tail call i32 @addchordname(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.22, i64 0, i64 0), i32 3, i32* getelementptr inbounds ([3 x i32], [3 x i32]* @setup_chordnames.list_sus9, i64 0, i64 0))
%24 = tail call i32 @addchordname(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.23, i64 0, i64 0), i32 3, i32* getelementptr inbounds ([3 x i32], [3 x i32]* @setup_chordnames.list_sus9, i64 0, i64 0))
%25 = tail call i32 @addchordname(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.24, i64 0, i64 0), i32 4, i32* getelementptr inbounds ([4 x i32], [4 x i32]* @setup_chordnames.list_7sus9, i64 0, i64 0))
%26 = tail call i32 @addchordname(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.25, i64 0, i64 0), i32 4, i32* getelementptr inbounds ([4 x i32], [4 x i32]* @setup_chordnames.list_7sus4, i64 0, i64 0))
%27 = tail call i32 @addchordname(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.26, i64 0, i64 0), i32 4, i32* getelementptr inbounds ([4 x i32], [4 x i32]* @setup_chordnames.list_7sus9, i64 0, i64 0))
%28 = tail call i32 @addchordname(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.27, i64 0, i64 0), i32 2, i32* getelementptr inbounds ([2 x i32], [2 x i32]* @setup_chordnames.list_5, i64 0, i64 0))
ret void
}