#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*/ ft_display_comb(char, char, char);
int /*<<< orphan*/ ft_put_char(char);
void ft_print_comb(void) {
  char i;
  char j;
  char k;
  i = '0';
  j = '1';
  k = '2';
  while (i < '7') {
    while (j <= '8') {
      while (k <= '9') {
        ft_display_comb(i, j, k);
        k++;
      }
      k = j + 1;
      j++;
    }
    j = i + 1;
    i++;
  }
  ft_put_char('7');
  ft_put_char('8');
  ft_put_char('9');
}


x86 assembly (clang, -O0):
<ft_print_comb>:
push   %rbp
mov    %rsp,%rbp
sub    $0x10,%rsp
movb   $0x30,-0x1(%rbp)
movb   $0x31,-0x2(%rbp)
movb   $0x32,-0x3(%rbp)
movsbl -0x1(%rbp),%eax
cmp    $0x37,%eax
jge    11b5 <ft_print_comb+0x95>
jmp    1146 <ft_print_comb+0x26>
movsbl -0x2(%rbp),%eax
cmp    $0x38,%eax
jg     119e <ft_print_comb+0x7e>
jmp    1158 <ft_print_comb+0x38>
movsbl -0x3(%rbp),%eax
cmp    $0x39,%eax
jg     1187 <ft_print_comb+0x67>
mov    -0x1(%rbp),%cl
mov    -0x2(%rbp),%al
movsbl %cl,%edi
movsbl %al,%esi
movsbl -0x3(%rbp),%edx
call   1040 <ft_display_comb@plt>
mov    -0x3(%rbp),%al
add    $0x1,%al
mov    %al,-0x3(%rbp)
jmp    1158 <ft_print_comb+0x38>
movsbl -0x2(%rbp),%eax
add    $0x1,%eax
mov    %al,-0x3(%rbp)
mov    -0x2(%rbp),%al
add    $0x1,%al
mov    %al,-0x2(%rbp)
jmp    1146 <ft_print_comb+0x26>
movsbl -0x1(%rbp),%eax
add    $0x1,%eax
mov    %al,-0x2(%rbp)
mov    -0x1(%rbp),%al
add    $0x1,%al
mov    %al,-0x1(%rbp)
jmp    1134 <ft_print_comb+0x14>
mov    $0x37,%edi
call   1030 <ft_put_char@plt>
mov    $0x38,%edi
call   1030 <ft_put_char@plt>
mov    $0x39,%edi
call   1030 <ft_put_char@plt>
add    $0x10,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<ft_print_comb>:
push   %rax
mov    $0x30,%edi
mov    $0x31,%esi
mov    $0x32,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x31,%esi
mov    $0x33,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x31,%esi
mov    $0x34,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x31,%esi
mov    $0x35,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x31,%esi
mov    $0x36,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x31,%esi
mov    $0x37,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x31,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x31,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x32,%esi
mov    $0x32,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x32,%esi
mov    $0x33,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x32,%esi
mov    $0x34,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x32,%esi
mov    $0x35,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x32,%esi
mov    $0x36,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x32,%esi
mov    $0x37,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x32,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x32,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x33,%esi
mov    $0x33,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x33,%esi
mov    $0x34,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x33,%esi
mov    $0x35,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x33,%esi
mov    $0x36,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x33,%esi
mov    $0x37,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x33,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x33,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x34,%esi
mov    $0x34,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x34,%esi
mov    $0x35,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x34,%esi
mov    $0x36,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x34,%esi
mov    $0x37,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x34,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x34,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x35,%esi
mov    $0x35,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x35,%esi
mov    $0x36,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x35,%esi
mov    $0x37,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x35,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x35,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x36,%esi
mov    $0x36,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x36,%esi
mov    $0x37,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x36,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x36,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x37,%esi
mov    $0x37,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x37,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x37,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x38,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x30,%edi
mov    $0x38,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x31,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x32,%esi
mov    $0x32,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x32,%esi
mov    $0x33,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x32,%esi
mov    $0x34,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x32,%esi
mov    $0x35,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x32,%esi
mov    $0x36,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x32,%esi
mov    $0x37,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x32,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x32,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x33,%esi
mov    $0x33,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x33,%esi
mov    $0x34,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x33,%esi
mov    $0x35,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x33,%esi
mov    $0x36,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x33,%esi
mov    $0x37,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x33,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x33,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x34,%esi
mov    $0x34,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x34,%esi
mov    $0x35,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x34,%esi
mov    $0x36,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x34,%esi
mov    $0x37,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x34,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x34,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x35,%esi
mov    $0x35,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x35,%esi
mov    $0x36,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x35,%esi
mov    $0x37,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x35,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x35,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x36,%esi
mov    $0x36,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x36,%esi
mov    $0x37,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x36,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x36,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x37,%esi
mov    $0x37,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x37,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x37,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x38,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x31,%edi
mov    $0x38,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x32,%edi
mov    $0x32,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x32,%edi
mov    $0x33,%esi
mov    $0x33,%edx
call   1040 <ft_display_comb@plt>
mov    $0x32,%edi
mov    $0x33,%esi
mov    $0x34,%edx
call   1040 <ft_display_comb@plt>
mov    $0x32,%edi
mov    $0x33,%esi
mov    $0x35,%edx
call   1040 <ft_display_comb@plt>
mov    $0x32,%edi
mov    $0x33,%esi
mov    $0x36,%edx
call   1040 <ft_display_comb@plt>
mov    $0x32,%edi
mov    $0x33,%esi
mov    $0x37,%edx
call   1040 <ft_display_comb@plt>
mov    $0x32,%edi
mov    $0x33,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x32,%edi
mov    $0x33,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x32,%edi
mov    $0x34,%esi
mov    $0x34,%edx
call   1040 <ft_display_comb@plt>
mov    $0x32,%edi
mov    $0x34,%esi
mov    $0x35,%edx
call   1040 <ft_display_comb@plt>
mov    $0x32,%edi
mov    $0x34,%esi
mov    $0x36,%edx
call   1040 <ft_display_comb@plt>
mov    $0x32,%edi
mov    $0x34,%esi
mov    $0x37,%edx
call   1040 <ft_display_comb@plt>
mov    $0x32,%edi
mov    $0x34,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x32,%edi
mov    $0x34,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x32,%edi
mov    $0x35,%esi
mov    $0x35,%edx
call   1040 <ft_display_comb@plt>
mov    $0x32,%edi
mov    $0x35,%esi
mov    $0x36,%edx
call   1040 <ft_display_comb@plt>
mov    $0x32,%edi
mov    $0x35,%esi
mov    $0x37,%edx
call   1040 <ft_display_comb@plt>
mov    $0x32,%edi
mov    $0x35,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x32,%edi
mov    $0x35,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x32,%edi
mov    $0x36,%esi
mov    $0x36,%edx
call   1040 <ft_display_comb@plt>
mov    $0x32,%edi
mov    $0x36,%esi
mov    $0x37,%edx
call   1040 <ft_display_comb@plt>
mov    $0x32,%edi
mov    $0x36,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x32,%edi
mov    $0x36,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x32,%edi
mov    $0x37,%esi
mov    $0x37,%edx
call   1040 <ft_display_comb@plt>
mov    $0x32,%edi
mov    $0x37,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x32,%edi
mov    $0x37,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x32,%edi
mov    $0x38,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x32,%edi
mov    $0x38,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x33,%edi
mov    $0x33,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x33,%edi
mov    $0x34,%esi
mov    $0x34,%edx
call   1040 <ft_display_comb@plt>
mov    $0x33,%edi
mov    $0x34,%esi
mov    $0x35,%edx
call   1040 <ft_display_comb@plt>
mov    $0x33,%edi
mov    $0x34,%esi
mov    $0x36,%edx
call   1040 <ft_display_comb@plt>
mov    $0x33,%edi
mov    $0x34,%esi
mov    $0x37,%edx
call   1040 <ft_display_comb@plt>
mov    $0x33,%edi
mov    $0x34,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x33,%edi
mov    $0x34,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x33,%edi
mov    $0x35,%esi
mov    $0x35,%edx
call   1040 <ft_display_comb@plt>
mov    $0x33,%edi
mov    $0x35,%esi
mov    $0x36,%edx
call   1040 <ft_display_comb@plt>
mov    $0x33,%edi
mov    $0x35,%esi
mov    $0x37,%edx
call   1040 <ft_display_comb@plt>
mov    $0x33,%edi
mov    $0x35,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x33,%edi
mov    $0x35,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x33,%edi
mov    $0x36,%esi
mov    $0x36,%edx
call   1040 <ft_display_comb@plt>
mov    $0x33,%edi
mov    $0x36,%esi
mov    $0x37,%edx
call   1040 <ft_display_comb@plt>
mov    $0x33,%edi
mov    $0x36,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x33,%edi
mov    $0x36,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x33,%edi
mov    $0x37,%esi
mov    $0x37,%edx
call   1040 <ft_display_comb@plt>
mov    $0x33,%edi
mov    $0x37,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x33,%edi
mov    $0x37,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x33,%edi
mov    $0x38,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x33,%edi
mov    $0x38,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x34,%edi
mov    $0x34,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x34,%edi
mov    $0x35,%esi
mov    $0x35,%edx
call   1040 <ft_display_comb@plt>
mov    $0x34,%edi
mov    $0x35,%esi
mov    $0x36,%edx
call   1040 <ft_display_comb@plt>
mov    $0x34,%edi
mov    $0x35,%esi
mov    $0x37,%edx
call   1040 <ft_display_comb@plt>
mov    $0x34,%edi
mov    $0x35,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x34,%edi
mov    $0x35,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x34,%edi
mov    $0x36,%esi
mov    $0x36,%edx
call   1040 <ft_display_comb@plt>
mov    $0x34,%edi
mov    $0x36,%esi
mov    $0x37,%edx
call   1040 <ft_display_comb@plt>
mov    $0x34,%edi
mov    $0x36,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x34,%edi
mov    $0x36,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x34,%edi
mov    $0x37,%esi
mov    $0x37,%edx
call   1040 <ft_display_comb@plt>
mov    $0x34,%edi
mov    $0x37,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x34,%edi
mov    $0x37,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x34,%edi
mov    $0x38,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x34,%edi
mov    $0x38,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x35,%edi
mov    $0x35,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x35,%edi
mov    $0x36,%esi
mov    $0x36,%edx
call   1040 <ft_display_comb@plt>
mov    $0x35,%edi
mov    $0x36,%esi
mov    $0x37,%edx
call   1040 <ft_display_comb@plt>
mov    $0x35,%edi
mov    $0x36,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x35,%edi
mov    $0x36,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x35,%edi
mov    $0x37,%esi
mov    $0x37,%edx
call   1040 <ft_display_comb@plt>
mov    $0x35,%edi
mov    $0x37,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x35,%edi
mov    $0x37,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x35,%edi
mov    $0x38,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x35,%edi
mov    $0x38,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x36,%edi
mov    $0x36,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x36,%edi
mov    $0x37,%esi
mov    $0x37,%edx
call   1040 <ft_display_comb@plt>
mov    $0x36,%edi
mov    $0x37,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x36,%edi
mov    $0x37,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x36,%edi
mov    $0x38,%esi
mov    $0x38,%edx
call   1040 <ft_display_comb@plt>
mov    $0x36,%edi
mov    $0x38,%esi
mov    $0x39,%edx
call   1040 <ft_display_comb@plt>
mov    $0x37,%edi
call   1030 <ft_put_char@plt>
mov    $0x38,%edi
call   1030 <ft_put_char@plt>
mov    $0x39,%edi
pop    %rax
jmp    1030 <ft_put_char@plt>

LLVM IR (-O0):
define void @ft_print_comb() {
%1 = alloca i8
%2 = alloca i8
%3 = alloca i8
store i8 48, i8* %1
store i8 49, i8* %2
store i8 50, i8* %3
br label %4
4: ; preds = %32, %0
%5 = load i8, i8* %1
%6 = sext i8 %5 to i32
%7 = icmp slt i32 %6, 55
br i1 %7, label %8, label %39
8: ; preds = %4
br label %9
9: ; preds = %25, %8
%10 = load i8, i8* %2
%11 = sext i8 %10 to i32
%12 = icmp sle i32 %11, 56
br i1 %12, label %13, label %32
13: ; preds = %9
br label %14
14: ; preds = %18, %13
%15 = load i8, i8* %3
%16 = sext i8 %15 to i32
%17 = icmp sle i32 %16, 57
br i1 %17, label %18, label %25
18: ; preds = %14
%19 = load i8, i8* %1
%20 = load i8, i8* %2
%21 = load i8, i8* %3
%22 = call i32 @ft_display_comb(i8 signext %19, i8 signext %20, i8 signext %21)
%23 = load i8, i8* %3
%24 = add i8 %23, 1
store i8 %24, i8* %3
br label %14
25: ; preds = %14
%26 = load i8, i8* %2
%27 = sext i8 %26 to i32
%28 = add nsw i32 %27, 1
%29 = trunc i32 %28 to i8
store i8 %29, i8* %3
%30 = load i8, i8* %2
%31 = add i8 %30, 1
store i8 %31, i8* %2
br label %9
32: ; preds = %9
%33 = load i8, i8* %1
%34 = sext i8 %33 to i32
%35 = add nsw i32 %34, 1
%36 = trunc i32 %35 to i8
store i8 %36, i8* %2
%37 = load i8, i8* %1
%38 = add i8 %37, 1
store i8 %38, i8* %1
br label %4
39: ; preds = %4
%40 = call i32 @ft_put_char(i8 signext 55)
%41 = call i32 @ft_put_char(i8 signext 56)
%42 = call i32 @ft_put_char(i8 signext 57)
ret void
}

LLVM IR (-O2):
define void @ft_print_comb() {
%1 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 49, i8 signext 50)
%2 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 49, i8 signext 51)
%3 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 49, i8 signext 52)
%4 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 49, i8 signext 53)
%5 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 49, i8 signext 54)
%6 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 49, i8 signext 55)
%7 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 49, i8 signext 56)
%8 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 49, i8 signext 57)
%9 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 50, i8 signext 50)
%10 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 50, i8 signext 51)
%11 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 50, i8 signext 52)
%12 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 50, i8 signext 53)
%13 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 50, i8 signext 54)
%14 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 50, i8 signext 55)
%15 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 50, i8 signext 56)
%16 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 50, i8 signext 57)
%17 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 51, i8 signext 51)
%18 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 51, i8 signext 52)
%19 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 51, i8 signext 53)
%20 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 51, i8 signext 54)
%21 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 51, i8 signext 55)
%22 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 51, i8 signext 56)
%23 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 51, i8 signext 57)
%24 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 52, i8 signext 52)
%25 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 52, i8 signext 53)
%26 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 52, i8 signext 54)
%27 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 52, i8 signext 55)
%28 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 52, i8 signext 56)
%29 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 52, i8 signext 57)
%30 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 53, i8 signext 53)
%31 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 53, i8 signext 54)
%32 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 53, i8 signext 55)
%33 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 53, i8 signext 56)
%34 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 53, i8 signext 57)
%35 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 54, i8 signext 54)
%36 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 54, i8 signext 55)
%37 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 54, i8 signext 56)
%38 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 54, i8 signext 57)
%39 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 55, i8 signext 55)
%40 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 55, i8 signext 56)
%41 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 55, i8 signext 57)
%42 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 56, i8 signext 56)
%43 = tail call i32 @ft_display_comb(i8 signext 48, i8 signext 56, i8 signext 57)
%44 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 49, i8 signext 57)
%45 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 50, i8 signext 50)
%46 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 50, i8 signext 51)
%47 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 50, i8 signext 52)
%48 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 50, i8 signext 53)
%49 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 50, i8 signext 54)
%50 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 50, i8 signext 55)
%51 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 50, i8 signext 56)
%52 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 50, i8 signext 57)
%53 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 51, i8 signext 51)
%54 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 51, i8 signext 52)
%55 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 51, i8 signext 53)
%56 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 51, i8 signext 54)
%57 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 51, i8 signext 55)
%58 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 51, i8 signext 56)
%59 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 51, i8 signext 57)
%60 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 52, i8 signext 52)
%61 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 52, i8 signext 53)
%62 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 52, i8 signext 54)
%63 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 52, i8 signext 55)
%64 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 52, i8 signext 56)
%65 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 52, i8 signext 57)
%66 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 53, i8 signext 53)
%67 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 53, i8 signext 54)
%68 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 53, i8 signext 55)
%69 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 53, i8 signext 56)
%70 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 53, i8 signext 57)
%71 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 54, i8 signext 54)
%72 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 54, i8 signext 55)
%73 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 54, i8 signext 56)
%74 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 54, i8 signext 57)
%75 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 55, i8 signext 55)
%76 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 55, i8 signext 56)
%77 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 55, i8 signext 57)
%78 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 56, i8 signext 56)
%79 = tail call i32 @ft_display_comb(i8 signext 49, i8 signext 56, i8 signext 57)
%80 = tail call i32 @ft_display_comb(i8 signext 50, i8 signext 50, i8 signext 57)
%81 = tail call i32 @ft_display_comb(i8 signext 50, i8 signext 51, i8 signext 51)
%82 = tail call i32 @ft_display_comb(i8 signext 50, i8 signext 51, i8 signext 52)
%83 = tail call i32 @ft_display_comb(i8 signext 50, i8 signext 51, i8 signext 53)
%84 = tail call i32 @ft_display_comb(i8 signext 50, i8 signext 51, i8 signext 54)
%85 = tail call i32 @ft_display_comb(i8 signext 50, i8 signext 51, i8 signext 55)
%86 = tail call i32 @ft_display_comb(i8 signext 50, i8 signext 51, i8 signext 56)
%87 = tail call i32 @ft_display_comb(i8 signext 50, i8 signext 51, i8 signext 57)
%88 = tail call i32 @ft_display_comb(i8 signext 50, i8 signext 52, i8 signext 52)
%89 = tail call i32 @ft_display_comb(i8 signext 50, i8 signext 52, i8 signext 53)
%90 = tail call i32 @ft_display_comb(i8 signext 50, i8 signext 52, i8 signext 54)
%91 = tail call i32 @ft_display_comb(i8 signext 50, i8 signext 52, i8 signext 55)
%92 = tail call i32 @ft_display_comb(i8 signext 50, i8 signext 52, i8 signext 56)
%93 = tail call i32 @ft_display_comb(i8 signext 50, i8 signext 52, i8 signext 57)
%94 = tail call i32 @ft_display_comb(i8 signext 50, i8 signext 53, i8 signext 53)
%95 = tail call i32 @ft_display_comb(i8 signext 50, i8 signext 53, i8 signext 54)
%96 = tail call i32 @ft_display_comb(i8 signext 50, i8 signext 53, i8 signext 55)
%97 = tail call i32 @ft_display_comb(i8 signext 50, i8 signext 53, i8 signext 56)
%98 = tail call i32 @ft_display_comb(i8 signext 50, i8 signext 53, i8 signext 57)
%99 = tail call i32 @ft_display_comb(i8 signext 50, i8 signext 54, i8 signext 54)
%100 = tail call i32 @ft_display_comb(i8 signext 50, i8 signext 54, i8 signext 55)
%101 = tail call i32 @ft_display_comb(i8 signext 50, i8 signext 54, i8 signext 56)
%102 = tail call i32 @ft_display_comb(i8 signext 50, i8 signext 54, i8 signext 57)
%103 = tail call i32 @ft_display_comb(i8 signext 50, i8 signext 55, i8 signext 55)
%104 = tail call i32 @ft_display_comb(i8 signext 50, i8 signext 55, i8 signext 56)
%105 = tail call i32 @ft_display_comb(i8 signext 50, i8 signext 55, i8 signext 57)
%106 = tail call i32 @ft_display_comb(i8 signext 50, i8 signext 56, i8 signext 56)
%107 = tail call i32 @ft_display_comb(i8 signext 50, i8 signext 56, i8 signext 57)
%108 = tail call i32 @ft_display_comb(i8 signext 51, i8 signext 51, i8 signext 57)
%109 = tail call i32 @ft_display_comb(i8 signext 51, i8 signext 52, i8 signext 52)
%110 = tail call i32 @ft_display_comb(i8 signext 51, i8 signext 52, i8 signext 53)
%111 = tail call i32 @ft_display_comb(i8 signext 51, i8 signext 52, i8 signext 54)
%112 = tail call i32 @ft_display_comb(i8 signext 51, i8 signext 52, i8 signext 55)
%113 = tail call i32 @ft_display_comb(i8 signext 51, i8 signext 52, i8 signext 56)
%114 = tail call i32 @ft_display_comb(i8 signext 51, i8 signext 52, i8 signext 57)
%115 = tail call i32 @ft_display_comb(i8 signext 51, i8 signext 53, i8 signext 53)
%116 = tail call i32 @ft_display_comb(i8 signext 51, i8 signext 53, i8 signext 54)
%117 = tail call i32 @ft_display_comb(i8 signext 51, i8 signext 53, i8 signext 55)
%118 = tail call i32 @ft_display_comb(i8 signext 51, i8 signext 53, i8 signext 56)
%119 = tail call i32 @ft_display_comb(i8 signext 51, i8 signext 53, i8 signext 57)
%120 = tail call i32 @ft_display_comb(i8 signext 51, i8 signext 54, i8 signext 54)
%121 = tail call i32 @ft_display_comb(i8 signext 51, i8 signext 54, i8 signext 55)
%122 = tail call i32 @ft_display_comb(i8 signext 51, i8 signext 54, i8 signext 56)
%123 = tail call i32 @ft_display_comb(i8 signext 51, i8 signext 54, i8 signext 57)
%124 = tail call i32 @ft_display_comb(i8 signext 51, i8 signext 55, i8 signext 55)
%125 = tail call i32 @ft_display_comb(i8 signext 51, i8 signext 55, i8 signext 56)
%126 = tail call i32 @ft_display_comb(i8 signext 51, i8 signext 55, i8 signext 57)
%127 = tail call i32 @ft_display_comb(i8 signext 51, i8 signext 56, i8 signext 56)
%128 = tail call i32 @ft_display_comb(i8 signext 51, i8 signext 56, i8 signext 57)
%129 = tail call i32 @ft_display_comb(i8 signext 52, i8 signext 52, i8 signext 57)
%130 = tail call i32 @ft_display_comb(i8 signext 52, i8 signext 53, i8 signext 53)
%131 = tail call i32 @ft_display_comb(i8 signext 52, i8 signext 53, i8 signext 54)
%132 = tail call i32 @ft_display_comb(i8 signext 52, i8 signext 53, i8 signext 55)
%133 = tail call i32 @ft_display_comb(i8 signext 52, i8 signext 53, i8 signext 56)
%134 = tail call i32 @ft_display_comb(i8 signext 52, i8 signext 53, i8 signext 57)
%135 = tail call i32 @ft_display_comb(i8 signext 52, i8 signext 54, i8 signext 54)
%136 = tail call i32 @ft_display_comb(i8 signext 52, i8 signext 54, i8 signext 55)
%137 = tail call i32 @ft_display_comb(i8 signext 52, i8 signext 54, i8 signext 56)
%138 = tail call i32 @ft_display_comb(i8 signext 52, i8 signext 54, i8 signext 57)
%139 = tail call i32 @ft_display_comb(i8 signext 52, i8 signext 55, i8 signext 55)
%140 = tail call i32 @ft_display_comb(i8 signext 52, i8 signext 55, i8 signext 56)
%141 = tail call i32 @ft_display_comb(i8 signext 52, i8 signext 55, i8 signext 57)
%142 = tail call i32 @ft_display_comb(i8 signext 52, i8 signext 56, i8 signext 56)
%143 = tail call i32 @ft_display_comb(i8 signext 52, i8 signext 56, i8 signext 57)
%144 = tail call i32 @ft_display_comb(i8 signext 53, i8 signext 53, i8 signext 57)
%145 = tail call i32 @ft_display_comb(i8 signext 53, i8 signext 54, i8 signext 54)
%146 = tail call i32 @ft_display_comb(i8 signext 53, i8 signext 54, i8 signext 55)
%147 = tail call i32 @ft_display_comb(i8 signext 53, i8 signext 54, i8 signext 56)
%148 = tail call i32 @ft_display_comb(i8 signext 53, i8 signext 54, i8 signext 57)
%149 = tail call i32 @ft_display_comb(i8 signext 53, i8 signext 55, i8 signext 55)
%150 = tail call i32 @ft_display_comb(i8 signext 53, i8 signext 55, i8 signext 56)
%151 = tail call i32 @ft_display_comb(i8 signext 53, i8 signext 55, i8 signext 57)
%152 = tail call i32 @ft_display_comb(i8 signext 53, i8 signext 56, i8 signext 56)
%153 = tail call i32 @ft_display_comb(i8 signext 53, i8 signext 56, i8 signext 57)
%154 = tail call i32 @ft_display_comb(i8 signext 54, i8 signext 54, i8 signext 57)
%155 = tail call i32 @ft_display_comb(i8 signext 54, i8 signext 55, i8 signext 55)
%156 = tail call i32 @ft_display_comb(i8 signext 54, i8 signext 55, i8 signext 56)
%157 = tail call i32 @ft_display_comb(i8 signext 54, i8 signext 55, i8 signext 57)
%158 = tail call i32 @ft_display_comb(i8 signext 54, i8 signext 56, i8 signext 56)
%159 = tail call i32 @ft_display_comb(i8 signext 54, i8 signext 56, i8 signext 57)
%160 = tail call i32 @ft_put_char(i8 signext 55)
%161 = tail call i32 @ft_put_char(i8 signext 56)
%162 = tail call i32 @ft_put_char(i8 signext 57)
ret void
}