]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Use a portable syntax to always inline functions.
authorWolfgang Bangerth <bangerth@math.tamu.edu>
Thu, 7 Jan 2016 22:30:53 +0000 (16:30 -0600)
committerWolfgang Bangerth <bangerth@math.tamu.edu>
Mon, 11 Jan 2016 13:18:49 +0000 (07:18 -0600)
include/deal.II/base/tensor.h
include/deal.II/base/tensor_accessors.h

index 81475a71f6a1478b7d767686aa903ad042d6a6a3..59f1b0c3303b0a8797e338b6ff30d58efaeebdf8 100644 (file)
@@ -843,7 +843,7 @@ namespace internal
   namespace TensorSubscriptor
   {
     template <typename ArrayElementType, int dim>
-    inline __attribute__((always_inline))
+    inline DEAL_II_ALWAYS_INLINE
     ArrayElementType &
     subscript (ArrayElementType *values,
                const unsigned int i,
@@ -869,7 +869,7 @@ namespace internal
 
 
 template <int rank_, int dim, typename Number>
-inline __attribute__((always_inline))
+inline DEAL_II_ALWAYS_INLINE
 typename Tensor<rank_,dim,Number>::value_type &
 Tensor<rank_,dim,Number>::operator[] (const unsigned int i)
 {
@@ -878,7 +878,7 @@ Tensor<rank_,dim,Number>::operator[] (const unsigned int i)
 
 
 template <int rank_, int dim, typename Number>
-inline __attribute__((always_inline))
+inline DEAL_II_ALWAYS_INLINE
 const typename Tensor<rank_,dim,Number>::value_type &
 Tensor<rank_,dim,Number>::operator[] (const unsigned int i) const
 {
@@ -1468,7 +1468,7 @@ operator- (const Tensor<rank,dim,Number> &p, const Tensor<rank,dim,OtherNumber>
  */
 template <int rank_1, int rank_2, int dim,
           typename Number, typename OtherNumber>
-inline __attribute__((always_inline))
+inline DEAL_II_ALWAYS_INLINE
 typename Tensor<rank_1 + rank_2 - 2, dim, typename ProductType<Number, OtherNumber>::type>::tensor_type
 operator * (const Tensor<rank_1, dim, Number> &src1,
             const Tensor<rank_2, dim, OtherNumber> &src2)
index 60d3133fbb5b7aa7444b1e0f169e1a54136ac40d..7f5a71574ce359e77668f63313e48b899a67daaf 100644 (file)
@@ -183,7 +183,7 @@ namespace TensorAccessors
    * @author Matthias Maier, 2015
    */
   template <int index, int rank, typename T>
-  __attribute__((always_inline)) internal::ReorderedIndexView<index, rank, T>
+  DEAL_II_ALWAYS_INLINE internal::ReorderedIndexView<index, rank, T>
   reordered_index_view(T &t)
   {
 #ifdef DEAL_II_WITH_CXX11
@@ -264,7 +264,7 @@ namespace TensorAccessors
    * @author Matthias Maier, 2015
    */
   template <int no_contr, int rank_1, int rank_2, int dim, typename T1, typename T2, typename T3>
-  __attribute__((always_inline)) void contract(T1 &result, const T2 &left, const T3 &right)
+  DEAL_II_ALWAYS_INLINE void contract(T1 &result, const T2 &left, const T3 &right)
   {
 #ifdef DEAL_II_WITH_CXX11
     static_assert(rank_1 >= no_contr, "The rank of the left tensor must be "
@@ -393,7 +393,7 @@ namespace TensorAccessors
       value_type;
 
       // Recurse by applying index j directly:
-      inline __attribute__((always_inline))
+      inline DEAL_II_ALWAYS_INLINE
       value_type operator[](unsigned int j) const
       {
         return value_type(t_[j]);
@@ -422,7 +422,7 @@ namespace TensorAccessors
 
       typedef StoreIndex<rank - 1, internal::Identity<T> > value_type;
 
-      inline __attribute__((always_inline))
+      inline DEAL_II_ALWAYS_INLINE
       value_type operator[](unsigned int j) const
       {
         return value_type(Identity<T>(t_), j);
@@ -443,7 +443,7 @@ namespace TensorAccessors
 
       typedef typename ReferenceType<typename ValueType<T>::value_type>::type value_type;
 
-      inline __attribute__((always_inline))
+      inline DEAL_II_ALWAYS_INLINE
       value_type operator[](unsigned int j) const
       {
         return t_[j];
@@ -466,7 +466,7 @@ namespace TensorAccessors
 
       typedef typename ValueType<T>::value_type return_type;
 
-      inline __attribute__((always_inline))
+      inline DEAL_II_ALWAYS_INLINE
       typename ReferenceType<return_type>::type apply(unsigned int j) const
       {
         return t_[j];
@@ -492,7 +492,7 @@ namespace TensorAccessors
 
       typedef StoreIndex<rank - 1, StoreIndex<rank, S> > value_type;
 
-      inline __attribute__((always_inline))
+      inline DEAL_II_ALWAYS_INLINE
       value_type operator[](unsigned int j) const
       {
         return value_type(*this, j);
@@ -524,7 +524,7 @@ namespace TensorAccessors
       typedef typename ValueType<typename S::return_type>::value_type return_type;
       typedef return_type value_type;
 
-      inline __attribute__((always_inline))
+      inline DEAL_II_ALWAYS_INLINE
       return_type &operator[](unsigned int j) const
       {
         return s_.apply(j)[i_];
@@ -595,7 +595,7 @@ namespace TensorAccessors
     {
     public:
       template<typename T1, typename T2, typename T3>
-      inline __attribute__((always_inline)) static
+      inline DEAL_II_ALWAYS_INLINE static
       void contract(T1 &result, const T2 &left, const T3 &right)
       {
         for (unsigned int i = 0; i < dim; ++i)
@@ -623,7 +623,7 @@ namespace TensorAccessors
     {
     public:
       template<typename T1, typename T2, typename T3>
-      inline __attribute__((always_inline)) static
+      inline DEAL_II_ALWAYS_INLINE static
       void contract(T1 &result, const T2 &left, const T3 &right)
       {
         for (unsigned int i = 0; i < dim; ++i)
@@ -651,7 +651,7 @@ namespace TensorAccessors
     {
     public:
       template<typename T1, typename T2, typename T3>
-      inline __attribute__((always_inline)) static
+      inline DEAL_II_ALWAYS_INLINE static
       void contract(T1 &result, const T2 &left, const T3 &right)
       {
         result = Contract2<no_contr, dim>::template contract2<T1>(left, right);
@@ -667,7 +667,7 @@ namespace TensorAccessors
     {
     public:
       template<typename T1, typename T2, typename T3>
-      inline __attribute__((always_inline)) static
+      inline DEAL_II_ALWAYS_INLINE static
       T1 contract2(const T2 &left, const T3 &right)
       {
         T1 result = T1();
@@ -685,7 +685,7 @@ namespace TensorAccessors
     {
     public:
       template<typename T1, typename T2, typename T3>
-      inline __attribute__((always_inline)) static
+      inline DEAL_II_ALWAYS_INLINE static
       T1 contract2(const T2 &left, const T3 &right)
       {
         return left * right;

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.