aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/target-s390.c
AgeCommit message (Collapse)AuthorFilesLines
2020-07-14arch: allow target specific [u]intptr_t & ptrdiff_tLuc Van Oostenryck1-0/+3
These types are aliased to size_t & ssize_t but this is not correct for all architectures. So, add a variable for them so that target files can adjust them. Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
2020-07-14arch: add predefines __INT_FAST${N}_TYPE__Luc Van Oostenryck1-0/+9
We just added __INT_LEAST${N}_TYPE__, so add these ones too as they looks slightly more useful. Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
2020-07-04add memory asm constraint for S390Luc Van Oostenryck1-0/+13
The 'Q', 'R', 'S' & 'T'' asm constraint are used for for memory operands on S390 but only 'Q' belong to the 'common constraints'. Fix this by handling the 3 others with an arch-specific method. Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
2019-12-16arch: use arch_target for INT128's predefineLuc Van Oostenryck1-0/+1
The predefine for INT128 is still done with the generic predefines but are arch-specific. So, set a new flag for each arch supporting int128 and use this to determine if the predefine must be issued or not. Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
2019-12-16arch: move target-specific predefines to the target files.Luc Van Oostenryck1-0/+18
Now that each supported arch has its own target file, move the arch-specific predefines to these files too. Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
2019-12-16arch: use an arch-specific default for -msize-longLuc Van Oostenryck1-0/+1
This is for completeness and only useful for S390 which is not exactly the most common arch. But since it's now easy to do this kind of thing ... Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
2019-12-16arch: move arch-specificities to their own filesLuc Van Oostenryck1-0/+28
lib.c and even more so, target.c, become cluttered by the arch specific type initialization. It would be better to move this to arch-specific files, move the generics target related helpers to target.c and have sparse_initialize() to just call these helpers. For doing this: * introduce a struct to hold the configurations for each arch, * move the arch-specific type initialization to separate files, * make target.c generic. Also change the default types to LP64. Note: this is the first step to better handle other arch specificities like the predefines or the handling of some options. Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>