summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/ARM/ARMAsmPrinter.h
diff options
context:
space:
mode:
authorArtyom Skrobov <Artyom.Skrobov@arm.com>2015-11-27 15:30:51 +0000
committerArtyom Skrobov <Artyom.Skrobov@arm.com>2015-11-27 15:30:51 +0000
commitb955b90509d7c36e7c3c4a424d9beeeeb880098a (patch)
tree7d52a9b4131e5d58522f4f9d9de2227c005a797d /llvm/lib/Target/ARM/ARMAsmPrinter.h
parentabadc2217225d0cfe09a8960ba8cd0722c5104e3 (diff)
downloadbcm5719-llvm-b955b90509d7c36e7c3c4a424d9beeeeb880098a.tar.gz
bcm5719-llvm-b955b90509d7c36e7c3c4a424d9beeeeb880098a.zip
[ARM] Generate ABI_optimization_goals build attribute, as described in the ARM ARM.
Summary: Since this build attribute corresponds to a whole module, and different functions in a module may differ in the optimizations enabled for them, this attribute is emitted after all functions, and only in the case that the optimization goals for all functions match. Reviewers: logan, hans Subscribers: aemerson, rengolin, llvm-commits Differential Revision: http://reviews.llvm.org/D14934 llvm-svn: 254201
Diffstat (limited to 'llvm/lib/Target/ARM/ARMAsmPrinter.h')
-rw-r--r--llvm/lib/Target/ARM/ARMAsmPrinter.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/llvm/lib/Target/ARM/ARMAsmPrinter.h b/llvm/lib/Target/ARM/ARMAsmPrinter.h
index fb925f162f7..ed7be2de51c 100644
--- a/llvm/lib/Target/ARM/ARMAsmPrinter.h
+++ b/llvm/lib/Target/ARM/ARMAsmPrinter.h
@@ -51,6 +51,11 @@ class LLVM_LIBRARY_VISIBILITY ARMAsmPrinter : public AsmPrinter {
/// labels used for ARMv4t thumb code to make register indirect calls.
SmallVector<std::pair<unsigned, MCSymbol*>, 4> ThumbIndirectPads;
+ /// OptimizationGoals - Maintain a combined optimization goal for all
+ /// functions in a module: one of Tag_ABI_optimization_goals values,
+ /// -1 if uninitialized, 0 if conflicting goals
+ int OptimizationGoals;
+
public:
explicit ARMAsmPrinter(TargetMachine &TM,
std::unique_ptr<MCStreamer> Streamer);
OpenPOWER on IntegriCloud