|
@@ -259,12 +259,6 @@ enum lbProcedureFlag : u32 {
|
|
|
lbProcedureFlag_DebugAllocaCopy = 1<<1,
|
|
|
};
|
|
|
|
|
|
-struct lbCopyElisionHint {
|
|
|
- lbValue ptr;
|
|
|
- Ast * ast;
|
|
|
- bool used;
|
|
|
-};
|
|
|
-
|
|
|
struct lbProcedure {
|
|
|
u32 flags;
|
|
|
u16 state_flags;
|
|
@@ -310,8 +304,6 @@ struct lbProcedure {
|
|
|
|
|
|
LLVMMetadataRef debug_info;
|
|
|
|
|
|
- lbCopyElisionHint copy_elision_hint;
|
|
|
-
|
|
|
PtrMap<Ast *, lbValue> selector_values;
|
|
|
PtrMap<Ast *, lbAddr> selector_addr;
|
|
|
};
|
|
@@ -383,7 +375,7 @@ lbValue lb_emit_byte_swap(lbProcedure *p, lbValue value, Type *end_type);
|
|
|
void lb_emit_defer_stmts(lbProcedure *p, lbDeferExitKind kind, lbBlock *block);
|
|
|
lbValue lb_emit_transmute(lbProcedure *p, lbValue value, Type *t);
|
|
|
lbValue lb_emit_comp(lbProcedure *p, TokenKind op_kind, lbValue left, lbValue right);
|
|
|
-lbValue lb_emit_call(lbProcedure *p, lbValue value, Array<lbValue> const &args, ProcInlining inlining = ProcInlining_none, bool use_return_ptr_hint = false);
|
|
|
+lbValue lb_emit_call(lbProcedure *p, lbValue value, Array<lbValue> const &args, ProcInlining inlining = ProcInlining_none);
|
|
|
lbValue lb_emit_conv(lbProcedure *p, lbValue value, Type *t);
|
|
|
lbValue lb_emit_comp_against_nil(lbProcedure *p, TokenKind op_kind, lbValue x);
|
|
|
|
|
@@ -497,10 +489,6 @@ void lb_mem_zero_ptr(lbProcedure *p, LLVMValueRef ptr, Type *type, unsigned alig
|
|
|
|
|
|
void lb_emit_init_context(lbProcedure *p, lbAddr addr);
|
|
|
|
|
|
-lbCopyElisionHint lb_set_copy_elision_hint(lbProcedure *p, lbAddr const &addr, Ast *ast);
|
|
|
-void lb_reset_copy_elision_hint(lbProcedure *p, lbCopyElisionHint prev_hint);
|
|
|
-lbValue lb_consume_copy_elision_hint(lbProcedure *p);
|
|
|
-
|
|
|
|
|
|
lbStructFieldRemapping lb_get_struct_remapping(lbModule *m, Type *t);
|
|
|
LLVMTypeRef lb_type_padding_filler(lbModule *m, i64 padding, i64 padding_align);
|