summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCamil Staps2016-11-29 19:35:26 +0000
committerCamil Staps2016-11-29 19:35:26 +0000
commit37e56edb3360e8c4f8fec68b22f6fb9f4249123e (patch)
tree9dac73376bd473896826540c208d3cbb15893b00
parentFixed some conditional instructions without IT block (diff)
Fix warning about multi-instruction IT blocks being deprecated in ARMv8
-rw-r--r--cgthumb2was.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/cgthumb2was.c b/cgthumb2was.c
index 2e9a333..df61406 100644
--- a/cgthumb2was.c
+++ b/cgthumb2was.c
@@ -1630,7 +1630,7 @@ static void w_as_set_condition_instruction (struct instruction *instruction,char
r=instruction->instruction_parameters[0].parameter_data.reg.r;
if (condition) {
- w_as_opcode ("ite");
+ w_as_opcode ("it");
fputs (condition,assembly_file);
w_as_newline_after_instruction();
}
@@ -1640,6 +1640,12 @@ static void w_as_set_condition_instruction (struct instruction *instruction,char
fprintf (assembly_file,",#1");
w_as_newline_after_instruction();
+ if (condition) {
+ w_as_opcode ("it");
+ fputs (invert_condition(condition),assembly_file);
+ w_as_newline_after_instruction();
+ }
+
w_as_opcode_condition (opcode,invert_condition(condition),0);
w_as_register (r);
fprintf (assembly_file,",#0");