Changeset 45553f5


Ignore:
Timestamp:
Mar 5, 2025, 7:15:22 PM (7 weeks ago)
Author:
Peter A. Buhr <pabuhr@…>
Branches:
master
Children:
88771d7
Parents:
ee8f72d (diff), ee22919 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc

Location:
src
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified src/Common/Iterate.hpp

    ree8f72d r45553f5  
    208208        return group_iterate_t<Args...>( std::forward<Args>( args )... );
    209209}
    210 
    211 // -----------------------------------------------------------------------------
    212 // Helper struct and function to support
    213 // for ( val : lazy_map( container1, f ) ) {}
    214 // syntax to have a for each that iterates a container,
    215 // mapping each element by applying f.
    216 
    217 template< typename T, typename Func >
    218 struct lambda_iterate_t {
    219         const T & ref;
    220         std::function<Func> f;
    221 
    222         struct iterator {
    223                 typedef decltype(begin(ref)) Iter;
    224                 Iter it;
    225                 std::function<Func> f;
    226                 iterator( Iter it, std::function<Func> f ) : it(it), f(f) {}
    227                 iterator & operator++() {
    228                         ++it; return *this;
    229                 }
    230                 bool operator!=( const iterator &other ) const { return it != other.it; }
    231                 auto operator*() const -> decltype(f(*it)) { return f(*it); }
    232         };
    233 
    234         lambda_iterate_t( const T & ref, std::function<Func> f ) : ref(ref), f(f) {}
    235 
    236         auto begin() const -> decltype(iterator(std::begin(ref), f)) { return iterator(std::begin(ref), f); }
    237         auto end() const   -> decltype(iterator(std::end(ref), f)) { return iterator(std::end(ref), f); }
    238 };
    239 
    240 template< typename... Args >
    241 lambda_iterate_t<Args...> lazy_map( const Args &... args ) {
    242         return lambda_iterate_t<Args...>( args...);
    243 }
    244 
    245 // Local Variables: //
    246 // tab-width: 4 //
    247 // mode: c++ //
    248 // compile-command: "make install" //
    249 // End: //
  • TabularUnified src/Parser/lex.ll

    ree8f72d r45553f5  
    1010 * Created On       : Sat Sep 22 08:58:10 2001
    1111 * Last Modified By : Peter A. Buhr
    12  * Last Modified On : Fri Jan 17 14:36:16 2025
    13  * Update Count     : 878
     12 * Last Modified On : Mon Mar  3 09:21:33 2025
     13 * Update Count     : 880
    1414 */
    1515
     
    240240basetypeof              { KEYWORD_RETURN(BASETYPEOF); }                 // CFA
    241241_Bool                   { KEYWORD_RETURN(BOOL); }                               // C99
    242 __SVBool_t              { KEYWORD_RETURN(SVBOOL); }                             // gcc (ARM)
     242__SVBool_t              { KEYWORD_RETURN(BOOL); }                               // gcc (ARM)
    243243break                   { KEYWORD_RETURN(BREAK); }
    244244case                    { KEYWORD_RETURN(CASE); }
     
    287287_Float128               { FLOATXX(FLOAT128); }                                  // GCC
    288288_Float128x              { FLOATXX(FLOAT128X); }                                 // GCC
    289 __Float32x4_t   { FLOATXX(FLOAT32X4); }                                 // GCC (ARM)
    290 __Float64x2_t   { FLOATXX(FLOAT64X2); }                                 // GCC (ARM)
    291 __SVFloat32_t   { FLOATXX(SVFLOAT32); }                                 // GCC (ARM)
    292 __SVFloat64_t   { FLOATXX(SVFLOAT64); }                                 // GCC (ARM)
     289__Float32x4_t   { FLOATXX(FLOAT128); }                                  // GCC (ARM)
     290__Float64x2_t   { FLOATXX(FLOAT128); }                                  // GCC (ARM)
     291__SVFloat32_t   { FLOATXX(FLOAT128); }                                  // GCC (ARM)
     292__SVFloat64_t   { FLOATXX(FLOAT128); }                                  // GCC (ARM)
    293293for                             { KEYWORD_RETURN(FOR); }
    294294forall                  { KEYWORD_RETURN(FORALL); }                             // CFA
Note: See TracChangeset for help on using the changeset viewer.