Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cpp: export space and the set and map empty and universe constructors #11

Open
wants to merge 5 commits into
base: master
Choose a base branch
from

Commits on Aug 18, 2017

  1. Add travis.yml

    tobiasgrosser committed Aug 18, 2017
    Configuration menu
    Copy the full SHA
    3177d92 View commit details
    Browse the repository at this point in the history
  2. Add isl_space_[set|map|params]_alloc_from_id_list

    This allows the allocation of an isl_space with a list of parameter ids.
    As a result, the space that is returned contains parameter dimensions
    that are uniquely identified by an isl_id. Such parameter dimensions are
    also called named parameter dimensions.
    
    Named parameter dimensions are uniquely identified by the isl_id they
    reference and compare according to the rules for isl_ids (see manual):
    
      "Identifiers with the same name but different pointer values are
       considered to be distinct. Similarly, identifiers with different names
       but the same pointer value are also considered to be distinct. Equal
       identifiers are represented using the same object."
    
    Also add isl_space_[set|map]_noparams and isl_space_params_alloc_empty
    for the allocation of spaces without any parameters. These will later
    serve as convenience alternatives in the python/c++ interfaces, where
    the allocation functions that allow for the creation of unnamed
    parameter dimensions are not available.
    
    Signed-off-by: Tobias Grosser <tobias@grosser.es>
    tobiasgrosser committed Aug 18, 2017
    Configuration menu
    Copy the full SHA
    367ad6a View commit details
    Browse the repository at this point in the history
  3. cpp/python: export isl_space

    isl_space is a documented isl data type required to programmatically
    generate isl objects. It is required to generate empty and universe sets
    and maps.
    
    To construct an isl_space this commit also exports three allocators,
    isl_[set|map]_alloc_noparams and isl_params_alloc_empty that allow the
    convenient construction of spaces without parameter dimensions.
    
    These constructors are exported as unnamed constructors. This is
    according to the isl interface guidelines, as each given set of argument
    types uniquely identifies the constructed space. Hence, there is no
    ambiguity and an unnamed constructor can be used.
    
    Spaces with named parameter dimensions can currently be obtained by using
    isl::manage or isl::manage_copy. After isl_id and isl_id_list have been
    exposed additional constructors that allow construction with named
    parameter lists can be exposed.
    
    Signed-off-by: Tobias Grosser <tobias@grosser.es>
    Reviewed-by: Oleksandr Zinenko <oleksandr.zinenko@inria.fr>
    tobiasgrosser committed Aug 18, 2017
    Configuration menu
    Copy the full SHA
    180c633 View commit details
    Browse the repository at this point in the history
  4. cpp/python: export empty and universe constructors for sets

    These functions are documented and commonly used when constructing isl
    sets. Export them for basic sets, sets, and union sets:
    
                isl_basic_set_empty
                isl_basic_set_universe
    
                isl_set_empty
                isl_set_universe
    
                isl_union_set_empty
    
    As the arguments of these constructors do not always uniquely identify
    the constructed object, named constructors are introduced according to
    the isl interface guidelines.
    
    Signed-off-by: Tobias Grosser <tobias@grosser.es>
    Reviewed-by: Oleksandr Zinenko <oleksandr.zinenko@inria.fr>
    tobiasgrosser committed Aug 18, 2017
    Configuration menu
    Copy the full SHA
    7ce6b49 View commit details
    Browse the repository at this point in the history
  5. cpp/python: export empty and universe constructors for maps

    These functions are documented and commonly used when constructing isl
    maps. Export them for basic maps, maps, and union maps:
    
    	isl_basic_map_empty
    	isl_basic_map_universe
    
    	isl_map_empty
    	isl_map_universe
    
    	isl_union_map_empty
    
    As the arguments of these constructors do not always uniquely identify
    the constructed object, named constructors are introduced according to
    the isl interface guidelines.
    
    Signed-off-by: Tobias Grosser <tobias@grosser.es>
    Reviewed-by: Oleksandr Zinenko <oleksandr.zinenko@inria.fr>
    tobiasgrosser committed Aug 18, 2017
    Configuration menu
    Copy the full SHA
    7cc58a9 View commit details
    Browse the repository at this point in the history