forked from OSchip/llvm-project
				
			Don't performance load/op/store transformation if op produces a floating point
or vector result. X86 does not have load/mod/store variants of those instructions. llvm-svn: 29957
This commit is contained in:
		
							parent
							
								
									358b9ed98a
								
							
						
					
					
						commit
						dfb85155dc
					
				| 
						 | 
					@ -312,7 +312,9 @@ void X86DAGToDAGISel::InstructionSelectPreprocess(SelectionDAG &DAG) {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    SDOperand N1 = I->getOperand(1);
 | 
					    SDOperand N1 = I->getOperand(1);
 | 
				
			||||||
    SDOperand N2 = I->getOperand(2);
 | 
					    SDOperand N2 = I->getOperand(2);
 | 
				
			||||||
    if (!N1.hasOneUse())
 | 
					    if (MVT::isFloatingPoint(N1.getValueType()) &&
 | 
				
			||||||
 | 
					        MVT::isVector(N1.getValueType()) &&
 | 
				
			||||||
 | 
					        !N1.hasOneUse())
 | 
				
			||||||
      continue;
 | 
					      continue;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    bool RModW = false;
 | 
					    bool RModW = false;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue