authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2022-07-01 20:11:06-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2022-07-01 20:11:06-07:00
logd19290e603833a197bc8bfc8315561ec77291225
treedd723069b44804957046b4e8ba2b4b552855f38a
parent1fa4a58d2c2a649e528b9424f01f16eac6af376c

stage1: update inline asm outputs to LLVM 14

LLVM pointers are transitioning to no longer have types, however, inline assembly inputs and outputs which accept pointers need to know the element type. So, inline assembly must be upgraded to add elementtype(<ty>) annotations.

1 files changed, 1 insertions(+), 0 deletions(-)

src/stage1/codegen.cpp+1
...@@ -5575,6 +5575,7 @@ static LLVMValueRef ir_render_asm_gen(CodeGen *g, Stage1Air *executable, Stage1A...@@ -5575,6 +5575,7 @@ static LLVMValueRef ir_render_asm_gen(CodeGen *g, Stage1Air *executable, Stage1A
5575 buf_appendf(&constraint_buf, "=%s", buf_ptr(asm_output->constraint) + 1);5575 buf_appendf(&constraint_buf, "=%s", buf_ptr(asm_output->constraint) + 1);
5576 } else {5576 } else {
5577 buf_appendf(&constraint_buf, "=*%s", buf_ptr(asm_output->constraint) + 1);5577 buf_appendf(&constraint_buf, "=*%s", buf_ptr(asm_output->constraint) + 1);
5578 param_needs_attr[param_index] = true;
5578 }5579 }
5579 if (total_index + 1 < total_constraint_count) {5580 if (total_index + 1 < total_constraint_count) {
5580 buf_append_char(&constraint_buf, ',');5581 buf_append_char(&constraint_buf, ',');