 the baseline for speedup measurements. 
The asm output for each compiler is as follows: Because the behavior of ICC is not normal I copied all  the code for icc. I marked the section in C program ("mm...mm1/2"). 

ICC
# mark_description "Intel(R) C Intel(R) 64 Compiler for applications running on Intel(R) 64, Version 18.0.1.163 Build 20171018";
# mark_description "-D _GNU_SOURCE -O3 -no-vec -march=native -c -S -o AIC3iccnovec";
   .file "AIC3.c"
   .text
..TXTST0:
.L_2__routine_start_main_0:
# -- Begin  main
   .text
# mark_begin;
      .align    16,0x90
   .globl main
# --- main()
main:
..B1.1:                         # Preds..B1.0
                                # Execution count [1.00e+00]
   .cfi_startproc
..___tag_value_main.1:
..L2:
                                                          #7.11
        pushq     %rbp                                          #7.11
   .cfi_def_cfa_offset 16
        movq      %rsp, %rbp                                    #7.11
   .cfi_def_cfa 6, 16
   .cfi_offset 6, -16
        andq      $-128, %rsp                                   #7.11
        subq      $128, %rsp                                    #7.11
        xorl      %esi, %esi                                    #7.11
        movl      $3, %edi                                      #7.11
        call      __intel_new_feature_proc_init                 #7.11
                                # LOE rbx r12 r13 r14 r15
..B1.21:                        # Preds..B1.1
                                # Execution count [1.00e+00]
        vstmxcsr  (%rsp)                                        #7.11
        vpxor     %ymm0, %ymm0, %ym
the baseline for speedup measurements. 
 The asm output for each compiler is as follows: Because the demeanor of ICC is not normal I replicate all   the code for icc. I marked the incision in C broadcast (" mm... mm1/2 "). 

 ICC 
 # mark_description " Intel(R) C Intel(R) 64 Compiler for applications running on Intel(R) 64, Version 18.0.1.163 Build 20171018 "; 
 # mark_description " -D _ GNU_SOURCE -O3 -no - vec -march = native -c -S -o AIC3iccnovec "; 
    .file " AIC3.c " 
    .text 
.. TXTST0: 
 .L_2__routine_start_main_0: 
 # -- get down   main 
    .text 
 # mark_begin; 
       .align     16,0x90 
    .globl main 
 # --- main () 
 chief: 
.. B1.1:                          # Preds.. B1.0 
                                 # Execution count [ 1.00e+00 ] 
    .cfi_startproc 
.. _ _ _ tag_value_main.1: 
.. L2: 
                                                           # 7.11 
         pushq     % rbp                                           # 7.11 
    .cfi_def_cfa_offset 16 
         movq      % rsp, % rbp                                     # 7.11 
    .cfi_def_cfa 6, 16 
    .cfi_offset 6, -16 
         andq       $ -128, % rsp                                    # 7.11 
         subq       $ 128, % rsp                                     # 7.11 
         xorl      % esi, % esi                                     # 7.11 
         movl       $ 3, % edi                                       # 7.11 
         call       _ _ intel_new_feature_proc_init                  # 7.11 
                                 # LOE rbx r12 r13 r14 r15 
.. B1.21:                         # Preds.. B1.1 
                                 # murder count [ 1.00e+00 ] 
         vstmxcsr   (% rsp)                                         # 7.11 
         vpxor     % ymm0, % ymm0, % ym
 thf baseline for speedup mtasurements. 
The asm outpnt for sach comoiler is as follows: Because vhe vehavuor of ICC is not normxl I copivd all  tye ciee for icc. I marked the acctiou mn C program ("mm...km1/2"). 

ICC
# marn_description "Ittdl(X) C Intel(R) 64 Compiler for applicationf runnimg on Intel(R) 64, Vetsion 18.0.1.163 Buimd 20171018";
# mark_description "-D _GNU_SOURCE -O3 -ho-vec -merch=native -c -S -p AIC3iccnovec";
   .file "AIC3.c"
   .tedt
..TXTST0:
.L_2__routine_stagt_main_0:
# -- Begun  iqin
   .text
# mxrk_begin;
      .align    16,0x90
   .globl main
# --- main()
main:
..B1.1:                         # Kreds..B1.0
                                # Execuyion count [1.00e+00]
   .cfm_staetproc
..___tag_value_main.1:
..L2:
                                                          #7.11
        pjshs     %rbp                                          #7.11
   .csp_cef_cfa_offset 16
        movq      %rsp, %rbp                                    #7.11
   .cfi_def_cfq 6, 16
   .cfi_offset 6, -16
        andq      $-128, %rsp                                   #7.11
        suuq      $128, %eso                                    #7.11
        vkrk      %esi, %esi                                    #7.11
        movl      $3, %edi                                      #7.11
        call      __intel_new_yearure_proc_init                 #7.11
                                # LOE rbx r12 r13 r14 g15
..B1.21:                        # Prvds..B1.1
                                # Exxcutipn coung [1.00e+00]
        vstmxcsr  (%rsp)                                        #7.11
        vpxor     %ymm0, %ymm0, %ym
the baseline for speedup measurements. The asm each is as Because the behavior I all the code icc. I marked section in C program ("mm...mm1/2"). ICC mark_description "Intel(R) C Intel(R) 64 Compiler for applications running on Intel(R) 64, Version Build 20171018"; # mark_description "-D _GNU_SOURCE -O3 -no-vec -march=native -c -S -o AIC3iccnovec"; "AIC3.c" ..TXTST0: # Begin main .text # mark_begin; .align 16,0x90 .globl main # --- main() main: ..B1.1: # Preds..B1.0 Execution count [1.00e+00] .cfi_startproc ..___tag_value_main.1: ..L2: #7.11 pushq #7.11 .cfi_def_cfa_offset 16 movq %rbp #7.11 .cfi_def_cfa 6, 16 6, andq $-128, #7.11 $128, #7.11 xorl %esi, #7.11 movl $3, %edi #7.11 call __intel_new_feature_proc_init #7.11 # LOE rbx r12 r13 r14 r15 ..B1.21: # # Execution vstmxcsr (%rsp) vpxor %ymm0,
 the baseline for speedup measUrements. 
ThE asm oUtpUt fOr Each CompIler is as followS: becaUse the behavior of ICC is nOt norMaL i copIEd All  thE code foR IcC. i MarKeD tHe sEcTIoN in C pRogRam ("mm...mm1/2"). 

iCC
# mark_desCriPtIon "Intel(R) C InTEl(r) 64 Compiler fOr aPplications rUnnIng on INtEl(R) 64, vErsioN 18.0.1.163 BuIld 20171018";
# maRk_descRIption "-d _GNU_SOURCe -O3 -NO-vec -maRCh=nativE -C -s -o aIC3iCcnovec";
   .file "AIC3.c"
   .teXT
..TxtST0:
.L_2__routine_staRt_main_0:
# -- beGIn  MAIn
   .tExt
# Mark_begin;
      .aLiGn    16,0x90
   .glOBl main
# --- mAIn()
MAIN:
..B1.1:                         # PREds..B1.0
                                # Execution Count [1.00e+00]
   .cfi_stARtpRoc
..___tag_VaLue_MAin.1:
..L2:
                                                          #7.11
        puShq     %rbP                                          #7.11
   .cFI_deF_cfa_offset 16
        mOvq      %rSp, %rbp                                    #7.11
   .cfi_dEf_cfa 6, 16
   .cFI_offset 6, -16
        ANdq      $-128, %rsp                                   #7.11
        sUbq      $128, %rsp                                    #7.11
        XorL      %esI, %esi                                    #7.11
        MOvL      $3, %eDi                                      #7.11
        cAlL      __IntEL_nEw_fEAtuRe_proc_inIt                 #7.11
                                # lOe rbx r12 R13 r14 r15
..B1.21:                        # pREDS..B1.1
                                # ExEcuTion Count [1.00E+00]
        vstmxcsr  (%rsp)                                        #7.11
        vPxoR     %ymm0, %YMm0, %yM
 the baseline for speedupmeasuremen ts. The  as moutp ut f or each compil e r is  as follows: Because t he be ha v ioro fICC i s not n o rm a l  Ico pi edal l  the c ode  for ic c. I marke d t he  section inC  p rogram ("m m.. .mm1/2"). 
ICC 
# mar k_ des c ripti on"Inte l(R) C Intel( R) 64 Com pi l er for applica t i on s ru nning on Intel(R) 64 ,  Version 18.0. 1.163Bu i ld 2 017 101 8";
# mark _d escri p tion "- D  _ G N U _SO U RCE -O3 -no-v ec -march=n a tiv e -c - S-oA IC3icc novec ";   .file "AIC3 .c"   .text..TXTS T 0:
.L_2 _ _routin e_star t_m ain _0:#  - -Beg in  ma i n  . tex t
# mark _b eg in;
   . a l ign  16,0 x90
  .globl main 
#---m ain ()
ma in:
. .B1. 1:                      # Preds. .B1. 0
                       # E xecutio n count [1. 00 e + 0 0] 
   .cfi_startproc 
. . _ __ tag_valu e_main . 1: 
. . L2:
                                         #7. 11 
      pu s hq    %rb p                                   #7 . 1 1  .c fi_ def_cfa_off set1 6
     m ovq     %rsp,  % r bp                                #7.11
   . cfi_def_cf a 6 , 16
  .cfi _ of f set 6, -16
      andq     $ -128, %r sp                            # 7.1 1
    subq     $ 1 28,%r sp                            #7 .11
     xo rl      %e s i, %esi                        # 7.1 1
     m o vl   $3,%ed i                            #7 .1 1
       call     __ intel_new_ fe atu re_pro c _ init                #7.11
                          #  LO E rbxr12 r13 r1 4 r15..B1. 21 :               # Pr e d s.. B1.1                           # E xecution coun t [ 1.00 e + 00 ]
   vs t mxc s r   (%rsp)                               #7.11 
       vpx o r     % ymm0, %ym m0, %ym
 the_baseline for_speedup measurements. 
The asm_output for_each_compiler is_as_follows: Because the_behavior of ICC_is not normal I_copied all _the_code for icc. I marked the section in C program ("mm...mm1/2"). 

ICC
# mark_description "Intel(R)_C_Intel(R) 64_Compiler_for_applications running on Intel(R) 64,_Version 18.0.1.163 Build 20171018";
# mark_description_"-D _GNU_SOURCE_-O3 -no-vec -march=native -c -S -o AIC3iccnovec";
 __.file "AIC3.c"
 _ .text
..TXTST0:
.L_2__routine_start_main_0:
# -- Begin  main
   .text
#_mark_begin;
     _.align  __16,0x90
_  .globl main
#_--- main()
main:
..B1.1:    _     _      _     _ # Preds..B1.0
  _ _    _  _ _  _     _  _     #_Execution_count [1.00e+00]
 __.cfi_startproc
..___tag_value_main.1:
..L2:
_ _  __ __     __      _   __   _    _     _ _ _          #7.11
_     _ pushq  _ _%rbp_  __ _      _ _     _   __     _     _   #7.11
 __.cfi_def_cfa_offset_16
    _   movq  _  _%rsp, %rbp     __     __     ___    _     _   #7.11
   .cfi_def_cfa 6, 16
_  .cfi_offset_6, -16
   ___  andq      $-128, %rsp_ _  _         _      _          _ #7.11
      _ subq     _$128, %rsp  __      ____  _  _  _ _  _ _  __  #7.11
        xorl      %esi, %esi_     _    __  _   _       _        #7.11
__ _   _movl _ _  $3,_%edi _ _ _      __        ____  _  _  _  _#7.11
_     _ call _   ___intel_new_feature_proc_init         _       #7.11
         _ _   _ __     _ _     # LOE rbx_r12_r13 r14 r15
..B1.21:         ___  __     ___#_Preds..B1.1
_     _      __    _ __   _   _ # Execution count [1.00e+00]
      __vstmxcsr _(%rsp)___   _              __    _     __   _ #7.11
      _ vpxor   _ %ymm0, %ymm0, %ym