Commit ae8792cb by Stefan Agner Committed by Kyrylo Tkachov

ARM: fix -masm-syntax-unified (PR88648)

This allows to use unified asm syntax when compiling for the
ARM instruction. This matches documentation and seems what the
initial patch was intended doing when the flag got added.

2019-01-10  Stefan Agner  <stefan@agner.ch>

	PR target/88648
	* config/arm/arm.c (arm_option_override_internal): Force
	opts->x_inline_asm_unified to true only if TARGET_THUMB2_P.

	* gcc.target/arm/pr88648-asm-syntax-unified.c: Add test to
	check if -masm-syntax-unified gets applied properly.

From-SVN: r267804
parent 7c4979b2
2019-01-10 Stefan Agner <stefan@agner.ch>
PR target/88648
* config/arm/arm.c (arm_option_override_internal): Force
opts->x_inline_asm_unified to true only if TARGET_THUMB2_P.
2019-01-10 Jakub Jelinek <jakub@redhat.com> 2019-01-10 Jakub Jelinek <jakub@redhat.com>
PR c/88568 PR c/88568
......
...@@ -3101,7 +3101,8 @@ arm_option_override_internal (struct gcc_options *opts, ...@@ -3101,7 +3101,8 @@ arm_option_override_internal (struct gcc_options *opts,
/* Thumb2 inline assembly code should always use unified syntax. /* Thumb2 inline assembly code should always use unified syntax.
This will apply to ARM and Thumb1 eventually. */ This will apply to ARM and Thumb1 eventually. */
opts->x_inline_asm_unified = TARGET_THUMB2_P (opts->x_target_flags); if (TARGET_THUMB2_P (opts->x_target_flags))
opts->x_inline_asm_unified = true;
#ifdef SUBTARGET_OVERRIDE_INTERNAL_OPTIONS #ifdef SUBTARGET_OVERRIDE_INTERNAL_OPTIONS
SUBTARGET_OVERRIDE_INTERNAL_OPTIONS; SUBTARGET_OVERRIDE_INTERNAL_OPTIONS;
......
2019-01-10 Stefan Agner <stefan@agner.ch>
PR target/88648
* gcc.target/arm/pr88648-asm-syntax-unified.c: Add test to
check if -masm-syntax-unified gets applied properly.
2019-01-10 Jakub Jelinek <jakub@redhat.com> 2019-01-10 Jakub Jelinek <jakub@redhat.com>
PR c/88568 PR c/88568
......
/* Test for unified syntax assembly generation. */
/* { dg-do compile } */
/* { dg-require-effective-target arm_arch_v7a_ok } */
/* { dg-add-options arm_arch_v7a } */
/* { dg-options "-marm -march=armv7-a -masm-syntax-unified" } */
void test ()
{
asm("nop");
}
/* { dg-final { scan-assembler-times {\.syntax\sunified} 3 } } */
/* { dg-final { scan-assembler-not {\.syntax\sdivided} } } */
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment