diff options
| author | Cullen Rhodes <cullen.rhodes@arm.com> | 2020-08-27 21:13:23 +0000 |
|---|---|---|
| committer | Cullen Rhodes <cullen.rhodes@arm.com> | 2020-08-27 21:31:05 +0000 |
| commit | 2e7041fdc223aae90eac294cda4fb3b0be8eeb34 (patch) | |
| tree | 876c95c1c9d6e4f62ca58b6d6dbbeb89bcb5d686 /clang/lib/CodeGen/CGExprScalar.cpp | |
| parent | d870e363263835bec96c83f51b20e64722cad742 (diff) | |
Revert "[CodeGen][AArch64] Support arm_sve_vector_bits attribute"
Test CodeGen/attr-arm-sve-vector-bits-call.c is failing on some builders
[1][2]. Reverting whilst I investigate.
[1] http://lab.llvm.org:8011/builders/fuchsia-x86_64-linux/builds/10375
[2] https://luci-milo.appspot.com/p/fuchsia/builders/ci/clang-linux-x64/b8870800848452818112
This reverts commit 42587345a3afc52c03c6e6095db773358a1b03e9.
Diffstat (limited to 'clang/lib/CodeGen/CGExprScalar.cpp')
| -rw-r--r-- | clang/lib/CodeGen/CGExprScalar.cpp | 28 |
1 files changed, 0 insertions, 28 deletions
diff --git a/clang/lib/CodeGen/CGExprScalar.cpp b/clang/lib/CodeGen/CGExprScalar.cpp index 21c891bb9137..511c6a66d555 100644 --- a/clang/lib/CodeGen/CGExprScalar.cpp +++ b/clang/lib/CodeGen/CGExprScalar.cpp @@ -2003,34 +2003,6 @@ Value *ScalarExprEmitter::VisitCastExpr(CastExpr *CE) { } } - // Perform VLAT <-> VLST bitcast through memory. - if ((isa<llvm::FixedVectorType>(SrcTy) && - isa<llvm::ScalableVectorType>(DstTy)) || - (isa<llvm::ScalableVectorType>(SrcTy) && - isa<llvm::FixedVectorType>(DstTy))) { - if (const CallExpr *CE = dyn_cast<CallExpr>(E)) { - // Call expressions can't have a scalar return unless the return type - // is a reference type so an lvalue can't be emitted. Create a temp - // alloca to store the call, bitcast the address then load. - QualType RetTy = CE->getCallReturnType(CGF.getContext()); - Address Addr = - CGF.CreateDefaultAlignTempAlloca(SrcTy, "saved-call-rvalue"); - LValue LV = CGF.MakeAddrLValue(Addr, RetTy); - CGF.EmitStoreOfScalar(Src, LV); - Addr = Builder.CreateElementBitCast(Addr, CGF.ConvertTypeForMem(DestTy), - "castFixedSve"); - LValue DestLV = CGF.MakeAddrLValue(Addr, DestTy); - DestLV.setTBAAInfo(TBAAAccessInfo::getMayAliasInfo()); - return EmitLoadOfLValue(DestLV, CE->getExprLoc()); - } - - Address Addr = EmitLValue(E).getAddress(CGF); - Addr = Builder.CreateElementBitCast(Addr, CGF.ConvertTypeForMem(DestTy)); - LValue DestLV = CGF.MakeAddrLValue(Addr, DestTy); - DestLV.setTBAAInfo(TBAAAccessInfo::getMayAliasInfo()); - return EmitLoadOfLValue(DestLV, CE->getExprLoc()); - } - return Builder.CreateBitCast(Src, DstTy); } case CK_AddressSpaceConversion: { |
