On Apr 25, 2011, at 6:01 PM, Eric Christopher wrote:

> 
> On Apr 25, 2011, at 4:48 PM, Stuart Hastings wrote:
> 
>> Author: stuart
>> Date: Mon Apr 25 18:48:12 2011
>> New Revision: 130176
>> 
>> URL: http://llvm.org/viewvc/llvm-project?rev=130176&view=rev
>> Log:
>> Turn on byval parameters in Clang for ARM APCS.  rdar://problem/7662569
> 
> This appears to have broken pointer_method2 (at least) in ToT so I'm going to 
> revert it for now.

Interesting.  The patch survived a NightlyTest regression check when I tested 
it this afternoon, and pointer_method2 ran O.K.

Maybe the tester was using a different optimization level or something.  Please 
send me a pointer to the diagnostic.

Thank you,

stuart

> Stack trace pasted at the end :)
> 
> -eric
> 
> Assertion failed: (size >= excess && "expected larger existing stack 
> allocation"), function HandleByVal, file 
> /Volumes/Data/sources/llvm-clean/lib/Target/ARM/ARMISelLowering.cpp, line 
> 1527.
> 0  clang             0x0000000101abe4d5 PrintStackTrace(void*) + 53
> 1  clang             0x0000000101abeb44 SignalHandler(int) + 372
> 2  libSystem.B.dylib 0x00007fff8169066a _sigtramp + 26
> 3  libSystem.B.dylib 0x0000000105b35ca0 _sigtramp + 2219464272
> 4  clang             0x0000000101abe81b raise + 27
> 5  clang             0x0000000101abe8da abort + 26
> 6  clang             0x0000000101abe8b1 __assert_rtn + 129
> 7  clang             0x0000000100f14a6b 
> llvm::ARMTargetLowering::HandleByVal(llvm::CCState*, unsigned int&) const + 
> 331
> 8  clang             0x00000001013b24e0 llvm::CCState::HandleByVal(unsigned 
> int, llvm::MVT, llvm::MVT, llvm::CCValAssign::LocInfo, int, int, 
> llvm::ISD::ArgFlagsTy) + 176
> 9  clang             0x0000000100f0d84b CC_ARM_APCS(unsigned int, llvm::MVT, 
> llvm::MVT, llvm::CCValAssign::LocInfo, llvm::ISD::ArgFlagsTy, llvm::CCState&) 
> + 155
> 10 clang             0x00000001013b2ac4 
> llvm::CCState::AnalyzeCallOperands(llvm::SmallVectorImpl<llvm::ISD::OutputArg>
>  const&, bool (*)(unsigned int, llvm::MVT, llvm::MVT, 
> llvm::CCValAssign::LocInfo, llvm::ISD::ArgFlagsTy, llvm::CCState&)) + 164
> 11 clang             0x0000000100f1049c 
> llvm::ARMTargetLowering::LowerCall(llvm::SDValue, llvm::SDValue, 
> llvm::CallingConv::ID, bool, bool&, 
> llvm::SmallVectorImpl<llvm::ISD::OutputArg> const&, 
> llvm::SmallVectorImpl<llvm::SDValue> const&, 
> llvm::SmallVectorImpl<llvm::ISD::InputArg> const&, llvm::DebugLoc, 
> llvm::SelectionDAG&, llvm::SmallVectorImpl<llvm::SDValue>&) const + 908
> 12 clang             0x00000001012af3db 
> llvm::TargetLowering::LowerCallTo(llvm::SDValue, llvm::Type const*, bool, 
> bool, bool, bool, unsigned int, llvm::CallingConv::ID, bool, bool, 
> llvm::SDValue, std::vector<llvm::TargetLowering::ArgListEntry, 
> std::allocator<llvm::TargetLowering::ArgListEntry> >&, llvm::SelectionDAG&, 
> llvm::DebugLoc) const + 3179
> 13 clang             0x000000010129635e 
> llvm::SelectionDAGBuilder::LowerCallTo(llvm::ImmutableCallSite, 
> llvm::SDValue, bool, llvm::MachineBasicBlock*) + 3438
> 14 clang             0x0000000101288269 
> llvm::SelectionDAGBuilder::visitCall(llvm::CallInst const&) + 5097
> 15 clang             0x0000000101280e39 
> llvm::SelectionDAGBuilder::visit(unsigned int, llvm::User const&) + 1033
> 16 clang             0x00000001012802d0 
> llvm::SelectionDAGBuilder::visit(llvm::Instruction const&) + 144
> 17 clang             0x00000001012d02cb 
> llvm::SelectionDAGISel::SelectBasicBlock(llvm::ilist_iterator<llvm::Instruction
>  const>, llvm::ilist_iterator<llvm::Instruction const>, bool&) + 171
> 18 clang             0x00000001012cfd52 
> llvm::SelectionDAGISel::SelectAllBasicBlocks(llvm::Function const&) + 2418
> 19 clang             0x00000001012ce638 
> llvm::SelectionDAGISel::runOnMachineFunction(llvm::MachineFunction&) + 776
> 20 clang             0x0000000101467320 
> llvm::MachineFunctionPass::runOnFunction(llvm::Function&) + 112
> 21 clang             0x00000001019b2fdc 
> llvm::FPPassManager::runOnFunction(llvm::Function&) + 476
> 22 clang             0x00000001019b33f3 
> llvm::FPPassManager::runOnModule(llvm::Module&) + 131
> 23 clang             0x00000001019b3656 
> llvm::MPPassManager::runOnModule(llvm::Module&) + 518
> 24 clang             0x00000001019b3e0c 
> llvm::PassManagerImpl::run(llvm::Module&) + 172
> 25 clang             0x00000001019b42cd llvm::PassManager::run(llvm::Module&) 
> + 29
> 26 clang             0x000000010021028c (anonymous 
> namespace)::EmitAssemblyHelper::EmitAssembly(clang::BackendAction, 
> llvm::raw_ostream*) + 1052
> 27 clang             0x000000010020fe0c 
> clang::EmitBackendOutput(clang::Diagnostic&, clang::CodeGenOptions const&, 
> clang::TargetOptions const&, llvm::Module*, clang::BackendAction, 
> llvm::raw_ostream*) + 92
> 28 clang             0x00000001003606ae 
> clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) + 622
> 29 clang             0x000000010039e844 clang::ParseAST(clang::Sema&, bool) + 
> 820
> 30 clang             0x00000001000a6d60 
> clang::ASTFrontendAction::ExecuteAction() + 272
> 31 clang             0x000000010035ee61 clang::CodeGenAction::ExecuteAction() 
> + 1137
> 32 clang             0x00000001000a693b clang::FrontendAction::Execute() + 363
> 33 clang             0x00000001000836f9 
> clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) + 985
> 34 clang             0x0000000100013ffc 
> clang::ExecuteCompilerInvocation(clang::CompilerInstance*) + 1068
> 35 clang             0x0000000100000ee8 cc1_main(char const**, char const**, 
> char const*, void*) + 1192
> 36 clang             0x000000010000d83b main + 667
> 37 clang             0x0000000100000a34 start + 52
> 

_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to