[gcc] 2014-01-23 Michael Meissner <meissner@linux.vnet.ibm.com> PR target/59909 * doc/invoke.texi (RS/6000 and PowerPC Options): Document -mquad-memory-atomic. Update -mquad-memory documentation to say it is only used for non-atomic loads/stores. * config/rs6000/predicates.md (quad_int_reg_operand): Allow either -mquad-memory or -mquad-memory-atomic switches. * config/rs6000/rs6000-cpus.def (ISA_2_7_MASKS_SERVER): Add -mquad-memory-atomic to ISA 2.07 support. * config/rs6000/rs6000.opt (-mquad-memory-atomic): Add new switch to separate support of normal quad word memory operations (ldq, stq) from the atomic quad word memory operations. * config/rs6000/rs6000.c (rs6000_option_override_internal): Add support to separate non-atomic quad word operations from atomic quad word operations. Disable non-atomic quad word operations in little endian mode so that we don't have to swap words after the load and before the store. (quad_load_store_p): Add comment about atomic quad word support. (rs6000_opt_masks): Add -mquad-memory-atomic to the list of options printed with -mdebug=reg. * config/rs6000/rs6000.h (TARGET_SYNC_TI): Use -mquad-memory-atomic as the test for whether we have quad word atomic instructions. (TARGET_SYNC_HI_QI): If either -mquad-memory-atomic, -mquad-memory, or -mp8-vector are used, allow byte/half-word atomic operations. * config/rs6000/sync.md (load_lockedti): Insure that the address is a proper indexed or indirect address for the lqarx instruction. On little endian systems, swap the hi/lo registers after the lqarx instruction. (load_lockedpti): Use indexed_or_indirect_operand predicate to insure the address is valid for the lqarx instruction. (store_conditionalti): Insure that the address is a proper indexed or indirect address for the stqcrx. instruction. On little endian systems, swap the hi/lo registers before doing the stqcrx. instruction. (store_conditionalpti): Use indexed_or_indirect_operand predicate to insure the address is valid for the stqcrx. instruction. * gcc/config/rs6000/rs6000-c.c (rs6000_target_modify_macros): Define __QUAD_MEMORY__ and __QUAD_MEMORY_ATOMIC__ based on what type of quad memory support is available. [gcc/testsuite] 2014-01-23 Michael Meissner <meissner@linux.vnet.ibm.com> PR target/59909 * gcc.target/powerpc/quad-atomic.c: New file to test power8 quad word atomic functions at runtime. From-SVN: r207020
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
20020118-1.c | Loading commit data... | |
20030218-1.c | Loading commit data... | |
20030505.c | Loading commit data... | |
20040121-1.c | Loading commit data... | |
20040622-1.c | Loading commit data... | |
20041111-1.c | Loading commit data... | |
20050603-1.c | Loading commit data... | |
20050603-3.c | Loading commit data... | |
20050830-1.c | Loading commit data... | |
20081204-1.c | Loading commit data... | |
405-dlmzb-strlen-1.c | Loading commit data... | |
405-macchw-1.c | Loading commit data... | |
405-macchw-2.c | Loading commit data... | |
405-macchwu-1.c | Loading commit data... | |
405-macchwu-2.c | Loading commit data... | |
405-machhw-1.c | Loading commit data... | |
405-machhw-2.c | Loading commit data... | |
405-machhwu-1.c | Loading commit data... | |
405-machhwu-2.c | Loading commit data... | |
405-maclhw-1.c | Loading commit data... | |
405-maclhw-2.c | Loading commit data... | |
405-maclhwu-1.c | Loading commit data... | |
405-maclhwu-2.c | Loading commit data... | |
405-mulchw-1.c | Loading commit data... | |
405-mulchw-2.c | Loading commit data... | |
405-mulchwu-1.c | Loading commit data... | |
405-mulchwu-2.c | Loading commit data... | |
405-mulhhw-1.c | Loading commit data... | |
405-mulhhw-2.c | Loading commit data... | |
405-mulhhwu-1.c | Loading commit data... | |
405-mulhhwu-2.c | Loading commit data... | |
405-mullhw-1.c | Loading commit data... | |
405-mullhw-2.c | Loading commit data... | |
405-mullhwu-1.c | Loading commit data... | |
405-mullhwu-2.c | Loading commit data... | |
405-nmacchw-1.c | Loading commit data... | |
405-nmacchw-2.c | Loading commit data... | |
405-nmachhw-1.c | Loading commit data... | |
405-nmachhw-2.c | Loading commit data... | |
405-nmaclhw-1.c | Loading commit data... | |
405-nmaclhw-2.c | Loading commit data... | |
440-dlmzb-strlen-1.c | Loading commit data... | |
440-macchw-1.c | Loading commit data... | |
440-macchw-2.c | Loading commit data... | |
440-macchwu-1.c | Loading commit data... | |
440-macchwu-2.c | Loading commit data... | |
440-machhw-1.c | Loading commit data... | |
440-machhw-2.c | Loading commit data... | |
440-machhwu-1.c | Loading commit data... | |
440-machhwu-2.c | Loading commit data... | |
440-maclhw-1.c | Loading commit data... | |
440-maclhw-2.c | Loading commit data... | |
440-maclhwu-1.c | Loading commit data... | |
440-maclhwu-2.c | Loading commit data... | |
440-mulchw-1.c | Loading commit data... | |
440-mulchw-2.c | Loading commit data... | |
440-mulchwu-1.c | Loading commit data... | |
440-mulchwu-2.c | Loading commit data... | |
440-mulhhw-1.c | Loading commit data... | |
440-mulhhw-2.c | Loading commit data... | |
440-mulhhwu-1.c | Loading commit data... | |
440-mulhhwu-2.c | Loading commit data... | |
440-mullhw-1.c | Loading commit data... | |
440-mullhw-2.c | Loading commit data... | |
440-mullhwu-1.c | Loading commit data... | |
440-mullhwu-2.c | Loading commit data... | |
440-nmacchw-1.c | Loading commit data... | |
440-nmacchw-2.c | Loading commit data... | |
440-nmachhw-1.c | Loading commit data... | |
440-nmachhw-2.c | Loading commit data... | |
440-nmaclhw-1.c | Loading commit data... | |
440-nmaclhw-2.c | Loading commit data... | |
980827-1.c | Loading commit data... | |
altivec-1.c | Loading commit data... | |
altivec-10.c | Loading commit data... | |
altivec-11.c | Loading commit data... | |
altivec-12.c | Loading commit data... | |
altivec-13.c | Loading commit data... | |
altivec-14.c | Loading commit data... | |
altivec-15.c | Loading commit data... | |
altivec-16.c | Loading commit data... | |
altivec-17.c | Loading commit data... | |
altivec-18.c | Loading commit data... | |
altivec-19.c | Loading commit data... | |
altivec-2.c | Loading commit data... | |
altivec-20.c | Loading commit data... | |
altivec-21.c | Loading commit data... | |
altivec-22.c | Loading commit data... | |
altivec-23.c | Loading commit data... | |
altivec-24.c | Loading commit data... | |
altivec-25.c | Loading commit data... | |
altivec-26.c | Loading commit data... | |
altivec-27.c | Loading commit data... | |
altivec-28.c | Loading commit data... | |
altivec-29.c | Loading commit data... | |
altivec-3.c | Loading commit data... | |
altivec-30.c | Loading commit data... | |
altivec-31.c | Loading commit data... | |
altivec-32.c | Loading commit data... | |
altivec-33.c | Loading commit data... | |
altivec-34.c | Loading commit data... | |
altivec-4.c | Loading commit data... | |
altivec-5.c | Loading commit data... | |
altivec-6.c | Loading commit data... | |
altivec-7.c | Loading commit data... | |
altivec-8.c | Loading commit data... | |
altivec-9.c | Loading commit data... | |
altivec-cell-1.c | Loading commit data... | |
altivec-cell-2.c | Loading commit data... | |
altivec-cell-3.c | Loading commit data... | |
altivec-cell-4.c | Loading commit data... | |
altivec-cell-5.c | Loading commit data... | |
altivec-cell-6.c | Loading commit data... | |
altivec-cell-7.c | Loading commit data... | |
altivec-cell-8.c | Loading commit data... | |
altivec-consts.c | Loading commit data... | |
altivec-macros.c | Loading commit data... | |
altivec-perm-1.c | Loading commit data... | |
altivec-perm-2.c | Loading commit data... | |
altivec-perm-3.c | Loading commit data... | |
altivec-perm-4.c | Loading commit data... | |
altivec-pr22085.c | Loading commit data... | |
altivec-splat.c | Loading commit data... | |
altivec-types-1.c | Loading commit data... | |
altivec-types-2.c | Loading commit data... | |
altivec-types-3.c | Loading commit data... | |
altivec-types-4.c | Loading commit data... | |
altivec-varargs-1.c | Loading commit data... | |
altivec-vec-merge.c | Loading commit data... | |
altivec-volatile.c | Loading commit data... | |
asm-es-1.c | Loading commit data... | |
asm-es-2.c | Loading commit data... | |
asm-y.c | Loading commit data... | |
atomic-p7.c | Loading commit data... | |
atomic-p8.c | Loading commit data... | |
avoid-indexed-addresses.c | Loading commit data... | |
block-move-1.c | Loading commit data... | |
block-move-2.c | Loading commit data... | |
bool.c | Loading commit data... | |
bool2-av.c | Loading commit data... | |
bool2-p5.c | Loading commit data... | |
bool2-p7.c | Loading commit data... | |
bool2-p8.c | Loading commit data... | |
bool2.h | Loading commit data... | |
bool3-av.c | Loading commit data... | |
bool3-p7.c | Loading commit data... | |
bool3-p8.c | Loading commit data... | |
bool3.h | Loading commit data... | |
bswap-run.c | Loading commit data... | |
bswap16.c | Loading commit data... | |
bswap32.c | Loading commit data... | |
bswap64-1.c | Loading commit data... | |
bswap64-2.c | Loading commit data... | |
bswap64-3.c | Loading commit data... | |
bswap64-4.c | Loading commit data... | |
cell_builtin-1.c | Loading commit data... | |
cell_builtin-2.c | Loading commit data... | |
cell_builtin-3.c | Loading commit data... | |
cell_builtin-4.c | Loading commit data... | |
cell_builtin-5.c | Loading commit data... | |
cell_builtin-6.c | Loading commit data... | |
cell_builtin-7.c | Loading commit data... | |
cell_builtin-8.c | Loading commit data... | |
compress-float-ppc-pic.c | Loading commit data... | |
compress-float-ppc.c | Loading commit data... | |
const-compare.c | Loading commit data... | |
crypto-builtin-1.c | Loading commit data... | |
darwin-abi-1.c | Loading commit data... | |
darwin-abi-10.c | Loading commit data... | |
darwin-abi-11.c | Loading commit data... | |
darwin-abi-12.c | Loading commit data... | |
darwin-abi-2.c | Loading commit data... | |
darwin-abi-3.c | Loading commit data... | |
darwin-abi-4.c | Loading commit data... | |
darwin-abi-5.c | Loading commit data... | |
darwin-abi-6.c | Loading commit data... | |
darwin-abi-7.c | Loading commit data... | |
darwin-abi-8.c | Loading commit data... | |
darwin-abi-9.c | Loading commit data... | |
darwin-bool-1.c | Loading commit data... | |
darwin-bool-2.c | Loading commit data... | |
darwin-ehreturn-1.c | Loading commit data... | |
darwin-longdouble.c | Loading commit data... | |
darwin-longlong.c | Loading commit data... | |
darwin-misaligned.c | Loading commit data... | |
darwin-save-world-1.c | Loading commit data... | |
darwin-split-ld-stret.c | Loading commit data... | |
darwin64-abi.c | Loading commit data... | |
dfmode_off.c | Loading commit data... | |
dfp-dd-2.c | Loading commit data... | |
dfp-dd.c | Loading commit data... | |
dfp-td-2.c | Loading commit data... | |
dfp-td-3.c | Loading commit data... | |
dfp-td.c | Loading commit data... | |
dimode_off.c | Loading commit data... | |
direct-move-double1.c | Loading commit data... | |
direct-move-double2.c | Loading commit data... | |
direct-move-float1.c | Loading commit data... | |
direct-move-float2.c | Loading commit data... | |
direct-move-long1.c | Loading commit data... | |
direct-move-long2.c | Loading commit data... | |
direct-move-vint1.c | Loading commit data... | |
direct-move-vint2.c | Loading commit data... | |
direct-move.h | Loading commit data... | |
doloop-1.c | Loading commit data... | |
e500-1.c | Loading commit data... | |
e500-ord-1.c | Loading commit data... | |
e500-ord-2.c | Loading commit data... | |
e500-unord-1.c | Loading commit data... | |
e500-unord-2.c | Loading commit data... | |
ehreturn.c | Loading commit data... | |
fusion.c | Loading commit data... | |
gcse-1.c | Loading commit data... | |
htm-builtin-1.c | Loading commit data... | |
htm-xl-intrin-1.c | Loading commit data... | |
indexed-addr.c | Loading commit data... | |
le-altivec-consts.c | Loading commit data... | |
leaf.c | Loading commit data... | |
lhs-1.c | Loading commit data... | |
lhs-2.c | Loading commit data... | |
lhs-3.c | Loading commit data... | |
longcall-1.c | Loading commit data... | |
loop_align.c | Loading commit data... | |
macho-lo-sum.c | Loading commit data... | |
medium_offset.c | Loading commit data... | |
mmfpgpr.c | Loading commit data... | |
no-r11-1.c | Loading commit data... | |
no-r11-2.c | Loading commit data... | |
no-r11-3.c | Loading commit data... | |
non-lazy-ptr-test.c | Loading commit data... | |
optimize-bswapdi-2.c | Loading commit data... | |
optimize-bswapdi-3.c | Loading commit data... | |
optimize-bswapsi-2.c | Loading commit data... | |
outofline_rnreg.c | Loading commit data... | |
p8vector-builtin-1.c | Loading commit data... | |
p8vector-builtin-2.c | Loading commit data... | |
p8vector-builtin-3.c | Loading commit data... | |
p8vector-builtin-4.c | Loading commit data... | |
p8vector-builtin-5.c | Loading commit data... | |
p8vector-builtin-6.c | Loading commit data... | |
p8vector-builtin-7.c | Loading commit data... | |
p8vector-fp.c | Loading commit data... | |
p8vector-ldst.c | Loading commit data... | |
p8vector-vectorize-1.c | Loading commit data... | |
p8vector-vectorize-2.c | Loading commit data... | |
p8vector-vectorize-3.c | Loading commit data... | |
p8vector-vectorize-4.c | Loading commit data... | |
p8vector-vectorize-5.c | Loading commit data... | |
paired-1.c | Loading commit data... | |
paired-10.c | Loading commit data... | |
paired-2.c | Loading commit data... | |
paired-3.c | Loading commit data... | |
paired-4.c | Loading commit data... | |
paired-5.c | Loading commit data... | |
paired-6.c | Loading commit data... | |
paired-7.c | Loading commit data... | |
paired-8.c | Loading commit data... | |
paired-9.c | Loading commit data... | |
parity-1.c | Loading commit data... | |
popcount-1.c | Loading commit data... | |
popcount-2.c | Loading commit data... | |
popcount-3.c | Loading commit data... | |
powerpc.exp | Loading commit data... | |
ppc-and-1.c | Loading commit data... | |
ppc-bitfield1.c | Loading commit data... | |
ppc-compare-1.c | Loading commit data... | |
ppc-eabi.c | Loading commit data... | |
ppc-eq0-1.c | Loading commit data... | |
ppc-fma-1.c | Loading commit data... | |
ppc-fma-2.c | Loading commit data... | |
ppc-fma-3.c | Loading commit data... | |
ppc-fma-4.c | Loading commit data... | |
ppc-fma-5.c | Loading commit data... | |
ppc-fma-6.c | Loading commit data... | |
ppc-fma-7.c | Loading commit data... | |
ppc-fmadd-1.c | Loading commit data... | |
ppc-fmadd-2.c | Loading commit data... | |
ppc-fmadd-3.c | Loading commit data... | |
ppc-fpconv-1.c | Loading commit data... | |
ppc-fpconv-10.c | Loading commit data... | |
ppc-fpconv-11.c | Loading commit data... | |
ppc-fpconv-2.c | Loading commit data... | |
ppc-fpconv-3.c | Loading commit data... | |
ppc-fpconv-4.c | Loading commit data... | |
ppc-fpconv-5.c | Loading commit data... | |
ppc-fpconv-6.c | Loading commit data... | |
ppc-fpconv-7.c | Loading commit data... | |
ppc-fpconv-8.c | Loading commit data... | |
ppc-fpconv-9.c | Loading commit data... | |
ppc-fsel-1.c | Loading commit data... | |
ppc-fsel-2.c | Loading commit data... | |
ppc-fsel-3.c | Loading commit data... | |
ppc-get-timebase.c | Loading commit data... | |
ppc-ldstruct.c | Loading commit data... | |
ppc-mftb.c | Loading commit data... | |
ppc-mov-1.c | Loading commit data... | |
ppc-ne0-1.c | Loading commit data... | |
ppc-negeq0-1.c | Loading commit data... | |
ppc-paired.c | Loading commit data... | |
ppc-pow.c | Loading commit data... | |
ppc-round.c | Loading commit data... | |
ppc-sdata-1.c | Loading commit data... | |
ppc-sdata-2.c | Loading commit data... | |
ppc-spe.c | Loading commit data... | |
ppc-spe64-1.c | Loading commit data... | |
ppc-stackalign-1.c | Loading commit data... | |
ppc-stfiwx.c | Loading commit data... | |
ppc-switch-1.c | Loading commit data... | |
ppc-switch-2.c | Loading commit data... | |
ppc-target-1.c | Loading commit data... | |
ppc-target-2.c | Loading commit data... | |
ppc-target-3.c | Loading commit data... | |
ppc-target-4.c | Loading commit data... | |
ppc-vector-memcpy.c | Loading commit data... | |
ppc-vector-memset.c | Loading commit data... | |
ppc32-abi-dfp-1.c | Loading commit data... | |
ppc64-abi-1.c | Loading commit data... | |
ppc64-abi-2.c | Loading commit data... | |
ppc64-abi-3.c | Loading commit data... | |
ppc64-abi-dfp-1.c | Loading commit data... | |
ppc64-double-1.c | Loading commit data... | |
ppc64-toc.c | Loading commit data... | |
ppu-intrinsics.c | Loading commit data... | |
pr16155.c | Loading commit data... | |
pr16286.c | Loading commit data... | |
pr16458-1.c | Loading commit data... | |
pr16458-2.c | Loading commit data... | |
pr16458-3.c | Loading commit data... | |
pr16458-4.c | Loading commit data... | |
pr18096-1.c | Loading commit data... | |
pr25960.c | Loading commit data... | |
pr26350.c | Loading commit data... | |
pr27158.c | Loading commit data... | |
pr35907.c | Loading commit data... | |
pr37168.c | Loading commit data... | |
pr39457.c | Loading commit data... | |
pr39902-2.c | Loading commit data... | |
pr41175.c | Loading commit data... | |
pr42747.c | Loading commit data... | |
pr43154.c | Loading commit data... | |
pr46728-1.c | Loading commit data... | |
pr46728-10.c | Loading commit data... | |
pr46728-11.c | Loading commit data... | |
pr46728-13.c | Loading commit data... | |
pr46728-14.c | Loading commit data... | |
pr46728-15.c | Loading commit data... | |
pr46728-16.c | Loading commit data... | |
pr46728-2.c | Loading commit data... | |
pr46728-3.c | Loading commit data... | |
pr46728-4.c | Loading commit data... | |
pr46728-5.c | Loading commit data... | |
pr46728-7.c | Loading commit data... | |
pr46728-8.c | Loading commit data... | |
pr47197.c | Loading commit data... | |
pr47251.c | Loading commit data... | |
pr47755-2.c | Loading commit data... | |
pr47755.c | Loading commit data... | |
pr47862.c | Loading commit data... | |
pr48053-1.c | Loading commit data... | |
pr48053-2.c | Loading commit data... | |
pr48053-3.c | Loading commit data... | |
pr48192.c | Loading commit data... | |
pr48226.c | Loading commit data... | |
pr48258-1.c | Loading commit data... | |
pr48258-2.c | Loading commit data... | |
pr48857.c | Loading commit data... | |
pr51623.c | Loading commit data... | |
pr52199.c | Loading commit data... | |
pr52457.c | Loading commit data... | |
pr52775.c | Loading commit data... | |
pr53199.c | Loading commit data... | |
pr53487.c | Loading commit data... | |
pr54009.c | Loading commit data... | |
pr54240.c | Loading commit data... | |
pr55033.c | Loading commit data... | |
pr56256.c | Loading commit data... | |
pr56605.c | Loading commit data... | |
pr57150.c | Loading commit data... | |
pr57363.c | Loading commit data... | |
pr57744.c | Loading commit data... | |
pr57949-1.c | Loading commit data... | |
pr57949-2.c | Loading commit data... | |
pr58330.c | Loading commit data... | |
pr58673-1.c | Loading commit data... | |
pr58673-2.c | Loading commit data... | |
pr59054.c | Loading commit data... | |
quad-atomic.c | Loading commit data... | |
recip-1.c | Loading commit data... | |
recip-2.c | Loading commit data... | |
recip-3.c | Loading commit data... | |
recip-4.c | Loading commit data... | |
recip-5.c | Loading commit data... | |
recip-6.c | Loading commit data... | |
recip-7.c | Loading commit data... | |
recip-test.h | Loading commit data... | |
recip-test2.h | Loading commit data... | |
regnames-1.c | Loading commit data... | |
rotate.c | Loading commit data... | |
rs6000-fpint-2.c | Loading commit data... | |
rs6000-fpint.c | Loading commit data... | |
rs6000-ldouble-1.c | Loading commit data... | |
rs6000-ldouble-2.c | Loading commit data... | |
rs6000-ldouble-3.c | Loading commit data... | |
savres.c | Loading commit data... | |
sd-pwr6.c | Loading commit data... | |
sd-vsx.c | Loading commit data... | |
spe-small-data-1.c | Loading commit data... | |
spe-small-data-2.c | Loading commit data... | |
spe-unwind-1.c | Loading commit data... | |
spe-vector-memcpy.c | Loading commit data... | |
spe-vector-memset.c | Loading commit data... | |
spe1.c | Loading commit data... | |
stabs-attrib-vect-darwin.c | Loading commit data... | |
tfmode_off.c | Loading commit data... | |
timode_off.c | Loading commit data... | |
vsx-builtin-1.c | Loading commit data... | |
vsx-builtin-2.c | Loading commit data... | |
vsx-builtin-3.c | Loading commit data... | |
vsx-builtin-4.c | Loading commit data... | |
vsx-builtin-5.c | Loading commit data... | |
vsx-builtin-6.c | Loading commit data... | |
vsx-builtin-7.c | Loading commit data... | |
vsx-builtin-8.c | Loading commit data... | |
vsx-float0.c | Loading commit data... | |
vsx-mass-1.c | Loading commit data... | |
vsx-sfminmax.c | Loading commit data... | |
vsx-vector-1.c | Loading commit data... | |
vsx-vector-2.c | Loading commit data... | |
vsx-vector-3.c | Loading commit data... | |
vsx-vector-4.c | Loading commit data... | |
vsx-vector-5.c | Loading commit data... | |
vsx-vector-6.c | Loading commit data... | |
vsx-vectorize-1.c | Loading commit data... | |
vsx-vectorize-2.c | Loading commit data... | |
vsx-vectorize-3.c | Loading commit data... | |
vsx-vectorize-4.c | Loading commit data... | |
vsx-vectorize-5.c | Loading commit data... | |
vsx-vectorize-6.c | Loading commit data... | |
vsx-vectorize-7.c | Loading commit data... | |
vsx-vectorize-8.c | Loading commit data... | |
warn-1.c | Loading commit data... | |
warn-2.c | Loading commit data... |