r207833 - XCore target: fix handling of -g0 flag

Robert Lytton robert at xmos.com
Fri May 2 08:33:14 PDT 2014


Hi David,

The patch is to the XCore::Assemble::ConstructJob() method.
The OPT_g_Group flags are all forwarded to the external xcore assembler as a '-g' flag,  apart from '-g0',  hence the fix.
Other assemblers may require different flags as directed by their Assemble::ConstructJob() specialization.

Does this answer your question?

Robert

________________________________
From: David Blaikie [dblaikie at gmail.com]
Sent: 02 May 2014 15:45
To: Robert Lytton
Cc: llvm cfe
Subject: Re: r207833 - XCore target: fix handling of -g0 flag


Is there any reason this code is xcore specific? Would've figured the basic debug flags would mostly be covered in some generic way? But I haven't looked. Perhaps there's good reason not to do that.

On May 2, 2014 2:43 AM, "Robert Lytton" <robert at xmos.com<mailto:robert at xmos.com>> wrote:
Author: rlytton
Date: Fri May  2 04:33:25 2014
New Revision: 207833

URL: http://llvm.org/viewvc/llvm-project?rev=207833&view=rev
Log:
XCore target: fix handling of -g0 flag

Modified:
    cfe/trunk/lib/Driver/Tools.cpp
    cfe/trunk/test/Driver/xcore-opts.c

Modified: cfe/trunk/lib/Driver/Tools.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/Tools.cpp?rev=207833&r1=207832&r2=207833&view=diff
==============================================================================
--- cfe/trunk/lib/Driver/Tools.cpp (original)
+++ cfe/trunk/lib/Driver/Tools.cpp Fri May  2 04:33:25 2014
@@ -7622,8 +7622,9 @@ void XCore::Assemble::ConstructJob(Compi
   if (Args.hasArg(options::OPT_v))
     CmdArgs.push_back("-v");

-  if (Args.hasArg(options::OPT_g_Group))
-    CmdArgs.push_back("-g");
+  if (Arg *A = Args.getLastArg(options::OPT_g_Group))
+    if (!A->getOption().matches(options::OPT_g0))
+      CmdArgs.push_back("-g");

   if (Args.hasFlag(options::OPT_fverbose_asm, options::OPT_fno_verbose_asm,
                    false))

Modified: cfe/trunk/test/Driver/xcore-opts.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/xcore-opts.c?rev=207833&r1=207832&r2=207833&view=diff
==============================================================================
--- cfe/trunk/test/Driver/xcore-opts.c (original)
+++ cfe/trunk/test/Driver/xcore-opts.c Fri May  2 04:33:25 2014
@@ -1,6 +1,7 @@
 // RUN: %clang -target xcore %s -g -Wl,L1Arg,L2Arg -Wa,A1Arg,A2Arg -fverbose-asm -v -### -o %t.o 2>&1 | FileCheck %s
 // RUN: %clang -target xcore -x c++ %s -g -Wl,L1Arg,L2Arg -Wa,A1Arg,A2Arg -fverbose-asm -v -### -o %t.o 2>&1 | FileCheck %s
 // RUN: %clang -target xcore -x c++ %s -fexceptions -### -o %t.o 2>&1 | FileCheck -check-prefix CHECK-EXCEP %s
+// RUN: %clang -target xcore %s -g0 -### -o %t.o 2>&1 | FileCheck -check-prefix CHECK-G0 %s

 // CHECK: "-nostdsysteminc"
 // CHECK: "-momit-leaf-frame-pointer"
@@ -27,3 +28,7 @@
 // CHECK-EXCEP: xcc" "-o"
 // CHECK-EXCEP: "-fexceptions"

+// CHECK-G0: xcc"
+// CHECK-G0-NOT: "-g"
+// CHECK-G0: xcc"
+


_______________________________________________
cfe-commits mailing list
cfe-commits at cs.uiuc.edu<mailto:cfe-commits at cs.uiuc.edu>
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20140502/c2345745/attachment.html>


More information about the cfe-commits mailing list