[PATCH] D43005: [ARM] Error out on .arm assembler directives on windows

Martin Storsjö via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Mar 20 01:47:48 PDT 2018


mstorsjo updated this revision to Diff 139086.
mstorsjo edited the summary of this revision.
mstorsjo added a comment.

Clearing the bit in code (as opposed to tablegen source files) when creating the MCSubtargetInfo for this OS.

This should hopefully be a bit cleaner.


https://reviews.llvm.org/D43005

Files:
  lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp
  test/MC/ARM/arm-thumb-cpus.s


Index: test/MC/ARM/arm-thumb-cpus.s
===================================================================
--- test/MC/ARM/arm-thumb-cpus.s
+++ test/MC/ARM/arm-thumb-cpus.s
@@ -19,6 +19,9 @@
 @ RUN: not llvm-mc -show-encoding -triple=armv6sm-eabi < %s 2>&1 \
 @ RUN:  | FileCheck %s --check-prefix=CHECK-THUMB-ONLY
 
+@ RUN: not llvm-mc -show-encoding -triple=thumbv7-win32-gnu < %s 2>&1 \
+@ RUN:  | FileCheck %s --check-prefix=CHECK-THUMB-ONLY
+
         @ Make sure correct diagnostics are given for CPUs without support for
         @ one or other of the execution states.
         .thumb
Index: lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp
===================================================================
--- lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp
+++ lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp
@@ -166,7 +166,10 @@
       ArchFS = FS;
   }
 
-  return createARMMCSubtargetInfoImpl(TT, CPU, ArchFS);
+  MCSubtargetInfo *Info = createARMMCSubtargetInfoImpl(TT, CPU, ArchFS);
+  if (TT.isOSWindows() && !Info->hasFeature(ARM::FeatureNoARM))
+    Info->ToggleFeature(ARM::FeatureNoARM);
+  return Info;
 }
 
 static MCInstrInfo *createARMMCInstrInfo() {


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D43005.139086.patch
Type: text/x-patch
Size: 1173 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180320/441b06d4/attachment.bin>


More information about the llvm-commits mailing list