@@ -11365,6 +11365,86 @@ perf-regression.cpp:
1136511365# 12| Type = [IntType] int
1136611366# 12| Value = [Literal] 0
1136711367# 12| ValueCategory = prvalue
11368+ smart_ptr.cpp:
11369+ # 8| [TopLevelFunction] void unique_ptr_arg(std::unique_ptr<int, std::default_delete<int>>)
11370+ # 8| <params>:
11371+ # 8| getParameter(0): [Parameter] up
11372+ # 8| Type = [ClassTemplateInstantiation] unique_ptr<int, default_delete<int>>
11373+ # 10| [TopLevelFunction] void call_unique_ptr_arg(int*)
11374+ # 10| <params>:
11375+ # 10| getParameter(0): [Parameter] p
11376+ # 10| Type = [IntPointerType] int *
11377+ # 10| getEntryPoint(): [BlockStmt] { ... }
11378+ # 11| getStmt(0): [DeclStmt] declaration
11379+ # 11| getDeclarationEntry(0): [VariableDeclarationEntry] definition of up
11380+ # 11| Type = [ClassTemplateInstantiation] unique_ptr<int, default_delete<int>>
11381+ # 11| getVariable().getInitializer(): [Initializer] initializer for up
11382+ # 11| getExpr(): [ConstructorCall] call to unique_ptr
11383+ # 11| Type = [VoidType] void
11384+ # 11| ValueCategory = prvalue
11385+ # 11| getArgument(0): [VariableAccess] p
11386+ # 11| Type = [IntPointerType] int *
11387+ # 11| ValueCategory = prvalue(load)
11388+ # 12| getStmt(1): [ExprStmt] ExprStmt
11389+ # 12| getExpr(): [FunctionCall] call to unique_ptr_arg
11390+ # 12| Type = [VoidType] void
11391+ # 12| ValueCategory = prvalue
11392+ # 12| getArgument(0): [FunctionCall] call to move
11393+ # 12| Type = [RValueReferenceType] type &&
11394+ # 12| ValueCategory = prvalue
11395+ # 12| getArgument(0): [VariableAccess] up
11396+ # 12| Type = [ClassTemplateInstantiation] unique_ptr<int, default_delete<int>>
11397+ # 12| ValueCategory = lvalue
11398+ # 12| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
11399+ # 12| Type = [LValueReferenceType] unique_ptr<int, default_delete<int>> &
11400+ # 12| ValueCategory = prvalue
11401+ # 12| getArgument(0).getFullyConverted(): [TemporaryObjectExpr] temporary object
11402+ # 12| Type = [ClassTemplateInstantiation] unique_ptr<int, default_delete<int>>
11403+ # 12| ValueCategory = lvalue
11404+ # 12| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
11405+ # 12| Type = [CTypedefType,NestedTypedefType] type
11406+ # 12| ValueCategory = prvalue(load)
11407+ # 13| getStmt(2): [ReturnStmt] return ...
11408+ # 15| [TopLevelFunction] void shared_ptr_arg(std::shared_ptr<float>)
11409+ # 15| <params>:
11410+ # 15| getParameter(0): [Parameter] sp
11411+ # 15| Type = [ClassTemplateInstantiation] shared_ptr<float>
11412+ # 17| [TopLevelFunction] void call_shared_ptr_arg(float*)
11413+ # 17| <params>:
11414+ # 17| getParameter(0): [Parameter] p
11415+ # 17| Type = [PointerType] float *
11416+ # 17| getEntryPoint(): [BlockStmt] { ... }
11417+ # 18| getStmt(0): [DeclStmt] declaration
11418+ # 18| getDeclarationEntry(0): [VariableDeclarationEntry] definition of sp
11419+ # 18| Type = [ClassTemplateInstantiation] shared_ptr<float>
11420+ # 18| getVariable().getInitializer(): [Initializer] initializer for sp
11421+ # 18| getExpr(): [ConstructorCall] call to shared_ptr
11422+ # 18| Type = [VoidType] void
11423+ # 18| ValueCategory = prvalue
11424+ # 18| getArgument(0): [VariableAccess] p
11425+ # 18| Type = [PointerType] float *
11426+ # 18| ValueCategory = prvalue(load)
11427+ # 19| getStmt(1): [ExprStmt] ExprStmt
11428+ # 19| getExpr(): [FunctionCall] call to shared_ptr_arg
11429+ # 19| Type = [VoidType] void
11430+ # 19| ValueCategory = prvalue
11431+ # 19| getArgument(0): [ConstructorCall] call to shared_ptr
11432+ # 19| Type = [VoidType] void
11433+ # 19| ValueCategory = prvalue
11434+ # 19| getArgument(0): [VariableAccess] sp
11435+ # 19| Type = [ClassTemplateInstantiation] shared_ptr<float>
11436+ # 19| ValueCategory = lvalue
11437+ # 19| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
11438+ # 19| Type = [LValueReferenceType] const shared_ptr<float> &
11439+ # 19| ValueCategory = prvalue
11440+ # 19| getExpr(): [CStyleCast] (const shared_ptr<float>)...
11441+ # 19| Conversion = [GlvalueConversion] glvalue conversion
11442+ # 19| Type = [SpecifiedType] const shared_ptr<float>
11443+ # 19| ValueCategory = lvalue
11444+ # 19| getArgument(0).getFullyConverted(): [TemporaryObjectExpr] temporary object
11445+ # 19| Type = [ClassTemplateInstantiation] shared_ptr<float>
11446+ # 19| ValueCategory = lvalue
11447+ # 20| getStmt(2): [ReturnStmt] return ...
1136811448struct_init.cpp:
1136911449# 1| [TopLevelFunction] int handler1(void*)
1137011450# 1| <params>:
0 commit comments