On Tue, Feb 18, 2014 at 5:08 PM, Michael Meissner <meiss...@linux.vnet.ibm.com> wrote: > When I made my patches for PR target/60203 (allow use of ISA 2.07 direct move > instructions for long double and _Decimal128), I was not aware that little > endian TDmode has the double words in big endian order, but the bytes within > the double words in little endian order in memory. This means that normal > SUBREG's of TDmode is not allowed. That patch broke the little endian build, > and this patch fixes it. In this patch, I don't allow doing direct move of > TDmode in little endian. > > I have done bootstraps and make check on a big endian power7, big endian > power8, and little endian power8 systems. The two big endian systems > introduce > no regressions with the patch applied and without the patch. The little > endian > system now builds, and runs the test suite. Is this patch ok to apply? > > I did not write a test case, as the normal bootstrap on a little endian power8 > system will catch regressions in the future. > > 2014-02-18 Michael Meissner <meiss...@linux.vnet.ibm.com> > > PR target/60203 > * config/rs6000/rs6000.md (mov<mode>_64bit, TF/TDmode moves): > Split 64-bit moves into 2 patterns. Do not allow the use of > direct move for TDmode in little endian, since the decimal value > has little endian bytes within a word, but the 64-bit pieces are > ordered in a big endian fashion, and normal subreg's of TDmode are > not allowed.
Okay. Thanks, David