[PATCH] D20708: Add ARM subtarget feature +long64

Pirama Arumuga Nainar via llvm-commits llvm-commits at lists.llvm.org
Thu May 26 16:01:53 PDT 2016


pirama created this revision.
pirama added a reviewer: kristof.beyls.
pirama added subscribers: srhines, llvm-commits.
Herald added subscribers: rengolin, aemerson.

This patch adds an ARM subtarget feature +long64 to request that long
datatype's width and alignment be 64-bits.

Tests included in accompanying patch to Clang.

http://reviews.llvm.org/D20708

Files:
  lib/Target/ARM/ARM.td
  lib/Target/ARM/ARMSubtarget.cpp
  lib/Target/ARM/ARMSubtarget.h

Index: lib/Target/ARM/ARMSubtarget.h
===================================================================
--- lib/Target/ARM/ARMSubtarget.h
+++ lib/Target/ARM/ARMSubtarget.h
@@ -237,6 +237,9 @@
   /// Target machine allowed unsafe FP math (such as use of NEON fp)
   bool UnsafeFPMath;
 
+  /// Force long to be 64-bit type
+  bool UseLong64;
+
   /// UseSjLjEH - If true, the target uses SjLj exception handling (e.g. iOS).
   bool UseSjLjEH;
 
Index: lib/Target/ARM/ARMSubtarget.cpp
===================================================================
--- lib/Target/ARM/ARMSubtarget.cpp
+++ lib/Target/ARM/ARMSubtarget.cpp
@@ -157,6 +157,7 @@
   UseNaClTrap = false;
   GenLongCalls = false;
   UnsafeFPMath = false;
+  UseLong64 = false;
   HasV7Clrex = false;
   HasAcquireRelease = false;
 
Index: lib/Target/ARM/ARM.td
===================================================================
--- lib/Target/ARM/ARM.td
+++ lib/Target/ARM/ARM.td
@@ -188,6 +188,10 @@
                                      "Don't use movt/movw pairs for 32-bit "
                                      "imms">;
 
+def FeatureLong64 : SubtargetFeature<"long64", "UseLong64",
+                                     "true",
+                                     "long type is forced to be 64-bit">;
+
 
 //===----------------------------------------------------------------------===//
 // ARM ISAa.


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D20708.58712.patch
Type: text/x-patch
Size: 1374 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160526/3b42e8f2/attachment.bin>


More information about the llvm-commits mailing list