Lines Matching full:complex
1 //===--- CGExprComplex.cpp - Emit LLVM Code for Complex Exprs -------------===//
10 // This contains code to emit Expr nodes with complex types as LLVM code.
25 // Complex Expression Emitter
59 /// EmitLoadOfLValue - Given an expression with complex type that represents a
67 assert(LV.isSimple() && "complex l-value must be simple");
71 /// EmitLoadOfComplex - Given a pointer to a complex value, emit code to load
75 /// EmitStoreThroughLValue - Given an l-value of complex type, store
76 /// a complex number into it.
78 assert(LV.isSimple() && "complex l-value must be simple");
86 /// EmitComplexToComplexCast - Emit a cast from complex value Val to DestType.
100 llvm_unreachable("Stmt can't have complex result type!");
183 // LNot,Real,Imag never return complex.
196 assert(E->getType()->isAnyComplexType() && "Expected complex type!");
202 assert(E->getType()->isAnyComplexType() && "Expected complex type!");
256 // GCC rejects rem/and/or/xor for integer complex.
257 // Logical and/or always return int, never complex.
259 // No comparisons produce a complex result.
289 /// EmitLoadOfComplex - Given an RValue reference for a complex, emit code to
327 CGF.ErrorUnsupported(E, "complex expression");
353 /// EmitComplexToComplexCast - Emit a cast from complex value Val to DestType.
361 // C99 6.3.1.6: When a value of complex type is converted to another
362 // complex type, both the real and imaginary parts follow the conversion
430 llvm_unreachable("invalid cast kind for complex value");
436 complex.
451 llvm_unreachable("unknown cast resulting in complex value");
767 CGF.ErrorUnsupported(E, "complex va_arg expression");
783 /// complex type, ignoring the result.
787 "Invalid complex expression to emit");
794 /// of complex type, storing into the specified Value*.
799 "Invalid complex expression to emit");
805 /// StoreComplexToAddr - Store a complex number into the specified address.
812 /// LoadComplexFromAddr - Load a complex number from the specified address.
834 llvm_unreachable("unexpected complex compound assignment");