forked from OSchip/llvm-project
				
			[X86][SLM] Vector stores only use the MEC port.
Confirmed by both Agner and Intel's AOM - the IEC/FPC are not required for pure load/stores (even if its a partial update). Can't fix WriteStore until all RMW instructions are cleaned up though.... llvm-svn: 332096
This commit is contained in:
		
							parent
							
								
									868b31bf21
								
							
						
					
					
						commit
						032a01f74a
					
				| 
						 | 
					@ -137,11 +137,11 @@ def  : WriteRes<WriteFLoadX,        [SLM_MEC_RSV]> { let Latency = 3; }
 | 
				
			||||||
def  : WriteRes<WriteFLoadY,        [SLM_MEC_RSV]> { let Latency = 3; }
 | 
					def  : WriteRes<WriteFLoadY,        [SLM_MEC_RSV]> { let Latency = 3; }
 | 
				
			||||||
def  : WriteRes<WriteFMaskedLoad,   [SLM_MEC_RSV]> { let Latency = 3; }
 | 
					def  : WriteRes<WriteFMaskedLoad,   [SLM_MEC_RSV]> { let Latency = 3; }
 | 
				
			||||||
def  : WriteRes<WriteFMaskedLoadY,  [SLM_MEC_RSV]> { let Latency = 3; }
 | 
					def  : WriteRes<WriteFMaskedLoadY,  [SLM_MEC_RSV]> { let Latency = 3; }
 | 
				
			||||||
def  : WriteRes<WriteFStore,        [SLM_FPC_RSV01, SLM_MEC_RSV]>;
 | 
					def  : WriteRes<WriteFStore,        [SLM_MEC_RSV]>;
 | 
				
			||||||
def  : WriteRes<WriteFStoreX,       [SLM_FPC_RSV01, SLM_MEC_RSV]>;
 | 
					def  : WriteRes<WriteFStoreX,       [SLM_MEC_RSV]>;
 | 
				
			||||||
def  : WriteRes<WriteFStoreY,       [SLM_FPC_RSV01, SLM_MEC_RSV]>;
 | 
					def  : WriteRes<WriteFStoreY,       [SLM_MEC_RSV]>;
 | 
				
			||||||
def  : WriteRes<WriteFMaskedStore,  [SLM_FPC_RSV01, SLM_MEC_RSV]>;
 | 
					def  : WriteRes<WriteFMaskedStore,  [SLM_MEC_RSV]>;
 | 
				
			||||||
def  : WriteRes<WriteFMaskedStoreY, [SLM_FPC_RSV01, SLM_MEC_RSV]>;
 | 
					def  : WriteRes<WriteFMaskedStoreY, [SLM_MEC_RSV]>;
 | 
				
			||||||
def  : WriteRes<WriteFMove,         [SLM_FPC_RSV01]>;
 | 
					def  : WriteRes<WriteFMove,         [SLM_FPC_RSV01]>;
 | 
				
			||||||
def  : WriteRes<WriteFMoveX,        [SLM_FPC_RSV01]>;
 | 
					def  : WriteRes<WriteFMoveX,        [SLM_FPC_RSV01]>;
 | 
				
			||||||
def  : WriteRes<WriteFMoveY,        [SLM_FPC_RSV01]>;
 | 
					def  : WriteRes<WriteFMoveY,        [SLM_FPC_RSV01]>;
 | 
				
			||||||
| 
						 | 
					@ -215,11 +215,11 @@ def  : WriteRes<WriteVecLoadX,        [SLM_MEC_RSV]> { let Latency = 3; }
 | 
				
			||||||
def  : WriteRes<WriteVecLoadY,        [SLM_MEC_RSV]> { let Latency = 3; }
 | 
					def  : WriteRes<WriteVecLoadY,        [SLM_MEC_RSV]> { let Latency = 3; }
 | 
				
			||||||
def  : WriteRes<WriteVecMaskedLoad,   [SLM_MEC_RSV]> { let Latency = 3; }
 | 
					def  : WriteRes<WriteVecMaskedLoad,   [SLM_MEC_RSV]> { let Latency = 3; }
 | 
				
			||||||
def  : WriteRes<WriteVecMaskedLoadY,  [SLM_MEC_RSV]> { let Latency = 3; }
 | 
					def  : WriteRes<WriteVecMaskedLoadY,  [SLM_MEC_RSV]> { let Latency = 3; }
 | 
				
			||||||
def  : WriteRes<WriteVecStore,        [SLM_FPC_RSV01, SLM_MEC_RSV]>;
 | 
					def  : WriteRes<WriteVecStore,        [SLM_MEC_RSV]>;
 | 
				
			||||||
def  : WriteRes<WriteVecStoreX,       [SLM_FPC_RSV01, SLM_MEC_RSV]>;
 | 
					def  : WriteRes<WriteVecStoreX,       [SLM_MEC_RSV]>;
 | 
				
			||||||
def  : WriteRes<WriteVecStoreY,       [SLM_FPC_RSV01, SLM_MEC_RSV]>;
 | 
					def  : WriteRes<WriteVecStoreY,       [SLM_MEC_RSV]>;
 | 
				
			||||||
def  : WriteRes<WriteVecMaskedStore,  [SLM_FPC_RSV01, SLM_MEC_RSV]>;
 | 
					def  : WriteRes<WriteVecMaskedStore,  [SLM_MEC_RSV]>;
 | 
				
			||||||
def  : WriteRes<WriteVecMaskedStoreY, [SLM_FPC_RSV01, SLM_MEC_RSV]>;
 | 
					def  : WriteRes<WriteVecMaskedStoreY, [SLM_MEC_RSV]>;
 | 
				
			||||||
def  : WriteRes<WriteVecMove,         [SLM_FPC_RSV01]>;
 | 
					def  : WriteRes<WriteVecMove,         [SLM_FPC_RSV01]>;
 | 
				
			||||||
def  : WriteRes<WriteVecMoveX,        [SLM_FPC_RSV01]>;
 | 
					def  : WriteRes<WriteVecMoveX,        [SLM_FPC_RSV01]>;
 | 
				
			||||||
def  : WriteRes<WriteVecMoveY,        [SLM_FPC_RSV01]>;
 | 
					def  : WriteRes<WriteVecMoveY,        [SLM_FPC_RSV01]>;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -331,7 +331,7 @@ xorps       (%rax), %xmm2
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# CHECK:      Resource pressure per iteration:
 | 
					# CHECK:      Resource pressure per iteration:
 | 
				
			||||||
# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]
 | 
					# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]
 | 
				
			||||||
# CHECK-NEXT:  -     232.00 8.00   62.50  47.50  2.50   2.50   67.00
 | 
					# CHECK-NEXT:  -     232.00 8.00   61.00  46.00  2.50   2.50   67.00
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# CHECK:      Resource pressure by instruction:
 | 
					# CHECK:      Resource pressure by instruction:
 | 
				
			||||||
# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    	Instructions:
 | 
					# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    	Instructions:
 | 
				
			||||||
| 
						 | 
					@ -382,7 +382,7 @@ xorps       (%rax), %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     	minss	%xmm0, %xmm2
 | 
					# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     	minss	%xmm0, %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -     1.00    -      -     1.00   	minss	(%rax), %xmm2
 | 
					# CHECK-NEXT:  -      -      -      -     1.00    -      -     1.00   	minss	(%rax), %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -     	movaps	%xmm0, %xmm2
 | 
					# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -     	movaps	%xmm0, %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -     0.50   0.50    -      -     1.00   	movaps	%xmm0, (%rax)
 | 
					# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movaps	%xmm0, (%rax)
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movaps	(%rax), %xmm2
 | 
					# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movaps	(%rax), %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     	movhlps	%xmm0, %xmm2
 | 
					# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     	movhlps	%xmm0, %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     	movlhps	%xmm0, %xmm2
 | 
					# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     	movlhps	%xmm0, %xmm2
 | 
				
			||||||
| 
						 | 
					@ -391,13 +391,13 @@ xorps       (%rax), %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -      -     0.50   0.50   1.00   	movlps	%xmm0, (%rax)
 | 
					# CHECK-NEXT:  -      -      -      -      -     0.50   0.50   1.00   	movlps	%xmm0, (%rax)
 | 
				
			||||||
# CHECK-NEXT:  -      -      -     1.00    -      -      -     1.00   	movlps	(%rax), %xmm2
 | 
					# CHECK-NEXT:  -      -      -     1.00    -      -      -     1.00   	movlps	(%rax), %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     	movmskps	%xmm0, %ecx
 | 
					# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     	movmskps	%xmm0, %ecx
 | 
				
			||||||
# CHECK-NEXT:  -      -      -     0.50   0.50    -      -     1.00   	movntps	%xmm0, (%rax)
 | 
					# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movntps	%xmm0, (%rax)
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -      -     0.50   0.50   1.00   	movntq	%mm0, (%rax)
 | 
					# CHECK-NEXT:  -      -      -      -      -     0.50   0.50   1.00   	movntq	%mm0, (%rax)
 | 
				
			||||||
# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     	movss	%xmm0, %xmm2
 | 
					# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     	movss	%xmm0, %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -      -     0.50   0.50   1.00   	movss	%xmm0, (%rax)
 | 
					# CHECK-NEXT:  -      -      -      -      -     0.50   0.50   1.00   	movss	%xmm0, (%rax)
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movss	(%rax), %xmm2
 | 
					# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movss	(%rax), %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -     	movups	%xmm0, %xmm2
 | 
					# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -     	movups	%xmm0, %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -     0.50   0.50    -      -     1.00   	movups	%xmm0, (%rax)
 | 
					# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movups	%xmm0, (%rax)
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movups	(%rax), %xmm2
 | 
					# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movups	(%rax), %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -     2.00   1.00    -      -      -      -     	mulps	%xmm0, %xmm2
 | 
					# CHECK-NEXT:  -      -     2.00   1.00    -      -      -      -     	mulps	%xmm0, %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -     2.00   1.00    -      -      -     1.00   	mulps	(%rax), %xmm2
 | 
					# CHECK-NEXT:  -      -     2.00   1.00    -      -      -     1.00   	mulps	(%rax), %xmm2
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -674,7 +674,7 @@ xorpd       (%rax), %xmm2
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# CHECK:      Resource pressure per iteration:
 | 
					# CHECK:      Resource pressure per iteration:
 | 
				
			||||||
# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]
 | 
					# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]
 | 
				
			||||||
# CHECK-NEXT:  -     412.00 8.00   154.00 90.00  4.50   4.50   130.00
 | 
					# CHECK-NEXT:  -     412.00 8.00   150.50 86.50  4.50   4.50   130.00
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# CHECK:      Resource pressure by instruction:
 | 
					# CHECK:      Resource pressure by instruction:
 | 
				
			||||||
# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    	Instructions:
 | 
					# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    	Instructions:
 | 
				
			||||||
| 
						 | 
					@ -736,7 +736,7 @@ xorpd       (%rax), %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -     32.00   -     1.00    -      -      -      -     	divsd	%xmm0, %xmm2
 | 
					# CHECK-NEXT:  -     32.00   -     1.00    -      -      -      -     	divsd	%xmm0, %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -     32.00   -     1.00    -      -      -     1.00   	divsd	(%rax), %xmm2
 | 
					# CHECK-NEXT:  -     32.00   -     1.00    -      -      -     1.00   	divsd	(%rax), %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	lfence
 | 
					# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	lfence
 | 
				
			||||||
# CHECK-NEXT:  -      -      -     0.50   0.50    -      -     1.00   	maskmovdqu	%xmm0, %xmm1
 | 
					# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	maskmovdqu	%xmm0, %xmm1
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     	maxpd	%xmm0, %xmm2
 | 
					# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     	maxpd	%xmm0, %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -     1.00    -      -     1.00   	maxpd	(%rax), %xmm2
 | 
					# CHECK-NEXT:  -      -      -      -     1.00    -      -     1.00   	maxpd	(%rax), %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     	maxsd	%xmm0, %xmm2
 | 
					# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     	maxsd	%xmm0, %xmm2
 | 
				
			||||||
| 
						 | 
					@ -746,17 +746,17 @@ xorpd       (%rax), %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     	minsd	%xmm0, %xmm2
 | 
					# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     	minsd	%xmm0, %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -     1.00    -      -     1.00   	minsd	(%rax), %xmm2
 | 
					# CHECK-NEXT:  -      -      -      -     1.00    -      -     1.00   	minsd	(%rax), %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -     	movapd	%xmm0, %xmm2
 | 
					# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -     	movapd	%xmm0, %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -     0.50   0.50    -      -     1.00   	movapd	%xmm0, (%rax)
 | 
					# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movapd	%xmm0, (%rax)
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movapd	(%rax), %xmm2
 | 
					# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movapd	(%rax), %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     	movd	%eax, %xmm2
 | 
					# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     	movd	%eax, %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movd	(%rax), %xmm2
 | 
					# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movd	(%rax), %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     	movd	%xmm0, %ecx
 | 
					# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     	movd	%xmm0, %ecx
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -      -     0.50   0.50   1.00   	movd	%xmm0, (%rax)
 | 
					# CHECK-NEXT:  -      -      -      -      -     0.50   0.50   1.00   	movd	%xmm0, (%rax)
 | 
				
			||||||
# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -     	movdqa	%xmm0, %xmm2
 | 
					# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -     	movdqa	%xmm0, %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -     0.50   0.50    -      -     1.00   	movdqa	%xmm0, (%rax)
 | 
					# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movdqa	%xmm0, (%rax)
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movdqa	(%rax), %xmm2
 | 
					# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movdqa	(%rax), %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -     	movdqu	%xmm0, %xmm2
 | 
					# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -     	movdqu	%xmm0, %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -     0.50   0.50    -      -     1.00   	movdqu	%xmm0, (%rax)
 | 
					# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movdqu	%xmm0, (%rax)
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movdqu	(%rax), %xmm2
 | 
					# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movdqu	(%rax), %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -     	movdq2q	%xmm0, %mm2
 | 
					# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -     	movdq2q	%xmm0, %mm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -      -     0.50   0.50   1.00   	movhpd	%xmm0, (%rax)
 | 
					# CHECK-NEXT:  -      -      -      -      -     0.50   0.50   1.00   	movhpd	%xmm0, (%rax)
 | 
				
			||||||
| 
						 | 
					@ -764,8 +764,8 @@ xorpd       (%rax), %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -      -     0.50   0.50   1.00   	movlpd	%xmm0, (%rax)
 | 
					# CHECK-NEXT:  -      -      -      -      -     0.50   0.50   1.00   	movlpd	%xmm0, (%rax)
 | 
				
			||||||
# CHECK-NEXT:  -      -      -     1.00    -      -      -     1.00   	movlpd	(%rax), %xmm2
 | 
					# CHECK-NEXT:  -      -      -     1.00    -      -      -     1.00   	movlpd	(%rax), %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     	movmskpd	%xmm0, %ecx
 | 
					# CHECK-NEXT:  -      -      -      -     1.00    -      -      -     	movmskpd	%xmm0, %ecx
 | 
				
			||||||
# CHECK-NEXT:  -      -      -     0.50   0.50    -      -     1.00   	movntdq	%xmm0, (%rax)
 | 
					# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movntdq	%xmm0, (%rax)
 | 
				
			||||||
# CHECK-NEXT:  -      -      -     0.50   0.50    -      -     1.00   	movntpd	%xmm0, (%rax)
 | 
					# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movntpd	%xmm0, (%rax)
 | 
				
			||||||
# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -     	movq	%xmm0, %xmm2
 | 
					# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -     	movq	%xmm0, %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     	movq	%rax, %xmm2
 | 
					# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     	movq	%rax, %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movq	(%rax), %xmm2
 | 
					# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movq	(%rax), %xmm2
 | 
				
			||||||
| 
						 | 
					@ -776,7 +776,7 @@ xorpd       (%rax), %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -      -     0.50   0.50   1.00   	movsd	%xmm0, (%rax)
 | 
					# CHECK-NEXT:  -      -      -      -      -     0.50   0.50   1.00   	movsd	%xmm0, (%rax)
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movsd	(%rax), %xmm2
 | 
					# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movsd	(%rax), %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -     	movupd	%xmm0, %xmm2
 | 
					# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -     	movupd	%xmm0, %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -      -     0.50   0.50    -      -     1.00   	movupd	%xmm0, (%rax)
 | 
					# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movupd	%xmm0, (%rax)
 | 
				
			||||||
# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movupd	(%rax), %xmm2
 | 
					# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   	movupd	(%rax), %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -     2.00   1.00    -      -      -      -     	mulpd	%xmm0, %xmm2
 | 
					# CHECK-NEXT:  -      -     2.00   1.00    -      -      -      -     	mulpd	%xmm0, %xmm2
 | 
				
			||||||
# CHECK-NEXT:  -      -     2.00   1.00    -      -      -     1.00   	mulpd	(%rax), %xmm2
 | 
					# CHECK-NEXT:  -      -     2.00   1.00    -      -      -     1.00   	mulpd	(%rax), %xmm2
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue