Changeset 4e06c1e for src/ControlStruct


Ignore:
Timestamp:
Jul 12, 2016, 6:34:10 PM (8 years ago)
Author:
Peter A. Buhr <pabuhr@…>
Branches:
ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, ctor, deferred_resn, demangler, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, memory, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, pthread-emulation, qualifiedEnum, resolv-new, with_gc
Children:
e4d3ceb
Parents:
6e4b913
Message:

changes for switch and choose statements

Location:
src/ControlStruct
Files:
2 deleted
7 edited

Legend:

Unmodified
Added
Removed
  • src/ControlStruct/CaseRangeMutator.cc

    r6e4b913 r4e06c1e  
    1010// Created On       : Mon May 18 07:44:20 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Thu Jun 30 13:28:55 2016
    13 // Update Count     : 8
     12// Last Modified On : Tue Jul 12 17:35:13 2016
     13// Update Count     : 9
    1414//
    1515
     
    2828
    2929namespace ControlStruct {
    30         Statement *CaseRangeMutator::mutate( ChooseStmt *chooseStmt ) {
    31                 // There shouldn't be any `choose' statements by now, throw an exception or something.
    32                 throw( 0 ) ; /* FIXME */
    33         }
    34 
    3530        Statement *CaseRangeMutator::mutate( SwitchStmt *switchStmt ) {
    3631                std::list< Statement * > &cases = switchStmt->get_branches();
     
    6964
    7065                return switchStmt;
    71         }
    72 
    73         Statement *CaseRangeMutator::mutate( FallthruStmt *fallthruStmt ) {
    74                 //delete fallthruStmt;
    75                 return new NullStmt();
    7666        }
    7767
  • src/ControlStruct/CaseRangeMutator.h

    r6e4b913 r4e06c1e  
    1010// Created On       : Mon May 18 07:44:20 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Tue May 19 15:22:51 2015
    13 // Update Count     : 3
     12// Last Modified On : Tue Jul 12 17:35:30 2016
     13// Update Count     : 4
    1414//
    1515
     
    2727                CaseRangeMutator() {}
    2828
    29                 virtual Statement *mutate( ChooseStmt * );
    3029                virtual Statement *mutate( SwitchStmt * );
    31                 virtual Statement *mutate( FallthruStmt * );
    3230                virtual Statement *mutate( CaseStmt * );
    3331          private:
  • src/ControlStruct/LabelFixer.h

    r6e4b913 r4e06c1e  
    1010// Created On       : Mon May 18 07:44:20 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Mon Jan 25 21:22:22 2016
    13 // Update Count     : 32
     12// Last Modified On : Tue Jul 12 17:36:16 2016
     13// Update Count     : 33
    1414//
    1515
     
    4646                virtual void visit( ForStmt *stmt ) { visit( (Statement *)stmt ); return Parent::visit( stmt ); }
    4747                virtual void visit( SwitchStmt *stmt ) { visit( (Statement *)stmt ); return Parent::visit( stmt ); }
    48                 virtual void visit( ChooseStmt *stmt ) { visit( (Statement *)stmt ); return Parent::visit( stmt ); }
    49                 virtual void visit( FallthruStmt *stmt ) { visit( (Statement *)stmt ); return Parent::visit( stmt ); }
    5048                virtual void visit( CaseStmt *stmt ) { visit( (Statement *)stmt ); return Parent::visit( stmt ); }
    5149                virtual void visit( ReturnStmt *stmt ) { visit( (Statement *)stmt ); return Parent::visit( stmt ); }
  • src/ControlStruct/MLEMutator.cc

    r6e4b913 r4e06c1e  
    1010// Created On       : Mon May 18 07:44:20 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Wed Jul  6 17:40:02 2016
    13 // Update Count     : 196
     12// Last Modified On : Tue Jul 12 17:36:51 2016
     13// Update Count     : 197
    1414//
    1515
     
    248248                return handleSwitchStmt( switchStmt );
    249249        }
    250 
    251         Statement *MLEMutator::mutate( ChooseStmt *switchStmt ) {
    252                 return handleSwitchStmt( switchStmt );
    253         }
    254250} // namespace ControlStruct
    255251
  • src/ControlStruct/MLEMutator.h

    r6e4b913 r4e06c1e  
    1010// Created On       : Mon May 18 07:44:20 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Wed Jul  6 18:16:26 2016
    13 // Update Count     : 33
     12// Last Modified On : Tue Jul 12 17:37:01 2016
     13// Update Count     : 34
    1414//
    1515
     
    4242                virtual Statement *mutate( IfStmt *ifStmt ) override;
    4343                virtual Statement *mutate( SwitchStmt *switchStmt ) override;
    44                 virtual Statement *mutate( ChooseStmt *switchStmt ) override;
    4544
    4645                Statement *mutateLoop( Statement *bodyLoop, Entry &e );
  • src/ControlStruct/Mutate.cc

    r6e4b913 r4e06c1e  
    99// Author           : Rodolfo G. Esteves
    1010// Created On       : Mon May 18 07:44:20 2015
    11 // Last Modified By : Rob Schluntz
    12 // Last Modified On : Wed Jul 15 14:50:04 2015
    13 // Update Count     : 7
     11// Last Modified By : Peter A. Buhr
     12// Last Modified On : Tue Jul 12 17:37:45 2016
     13// Update Count     : 8
    1414//
    1515
     
    2020
    2121#include "Mutate.h"
    22 #include "ChooseMutator.h"
    2322#include "LabelFixer.h"
    2423#include "MLEMutator.h"
     
    3938                ForExprMutator formut;
    4039
    41                 // transform choose statements into switch statements
    42                 ChooseMutator chmut;
    43 
    44                 // normalizes label definitions and generates multi-level
    45                 // exit labels
     40                // normalizes label definitions and generates multi-level exit labels
    4641                LabelFixer lfix;
    4742
    4843                // expand case ranges and turn fallthru into a null statement
    49                 CaseRangeMutator ranges;  // has to run after ChooseMutator
     44                CaseRangeMutator ranges;
    5045
    5146                //ExceptMutator exc;
     
    5348
    5449                mutateAll( translationUnit, formut );
    55                 mutateAll( translationUnit, chmut );
    5650                acceptAll( translationUnit, lfix );
    5751                mutateAll( translationUnit, ranges );
  • src/ControlStruct/module.mk

    r6e4b913 r4e06c1e  
    1111## Created On       : Mon Jun  1 17:49:17 2015
    1212## Last Modified By : Peter A. Buhr
    13 ## Last Modified On : Mon Jun  1 17:51:45 2015
    14 ## Update Count     : 1
     13## Last Modified On : Tue Jul 12 17:40:31 2016
     14## Update Count     : 2
    1515###############################################################################
    1616
     
    2020        ControlStruct/CaseRangeMutator.cc \
    2121        ControlStruct/Mutate.cc \
    22         ControlStruct/ChooseMutator.cc \
    2322        ControlStruct/ForExprMutator.cc \
    2423        ControlStruct/LabelTypeChecker.cc
Note: See TracChangeset for help on using the changeset viewer.