-
Notifications
You must be signed in to change notification settings - Fork 24
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
GCC: xtensa: Backport patches from upstream/master #29
GCC: xtensa: Backport patches from upstream/master #29
Conversation
These look very interesting, @jjsuwa-sys3175 ! Do you think you should submit them to the GCC team directly? I don't think there are any ESP8266 Xtensa implementation specific bits in these patches. |
2d93b7e
to
ed1fa3e
Compare
385af2d
to
815327b
Compare
815327b
to
c915ad2
Compare
c915ad2
to
e7ade3a
Compare
f8a6a20
to
9f47301
Compare
12bb08c
to
323793c
Compare
323793c
to
eefd4ab
Compare
/cc @jcmvbkbc
currently I prepare posting the all of these patches to gcc-patch ML. and now, these patches pass:
successfully :) |
"FSBrowser" building result:
ESP8266 Quick Toolchain for 3.0.6-gcc10.3 (LINUX, unofficial) ESP8266 Quick Toolchain for 3.0.6-gcc10.3 (WIN64, unofficial) |
@jjsuwa-sys3175 please cc me on these e-mails, it's so easy to miss them. I'm updating my gcc testing setup and will approve the patches after running regression tests. I guess I should also commit them or do you want to do it yourself? |
ok, I understand.
I appreciate your support.
sorry, can I leave it to you? |
Sure, no problem. |
6f3daae
to
4f8fe55
Compare
4f8fe55
to
4b0c363
Compare
4b0c363
to
547fe10
Compare
@jjsuwa-sys3175 can I merge and rebuild the toolchain now, or are you still planning on adding things here? I'd like to deploy to the main ESP8266 repo and get some feedback soon, so that these changes can be in the next release... |
@earlephilhower oh sorry, it took a long time... |
547fe10
to
5a4e196
Compare
5a4e196
to
6468e23
Compare
finally done! acknowledgements: |
additional info:
|
2b5b8610e985e23a0c2e0272339ab074a750e240 "xtensa: Fix non-robust split condition in define_insn_and_split" 7e5baa7e6f4caced6bdaef6d866d19e7656d8a16 "xtensa: fix -Wformat-diag warnings." d543bac1631700f0da30d5ca555296f4938a82c6 "xtensa: Rename deprecated extv/extzv insn patterns to extvsi/extzvsi" 112447f8564c0307c5da99a4094a3a99f204239f "xtensa: Reflect the 32-bit Integer Divide Option" b753405a5f0d45eea97f4cc7df2c2089401b08bf "xtensa: Simplify EXTUI instruction maskimm validations" 9b251fe2e39a49c0d3ecd34cf8c5d55544efd159 "xtensa: Make use of IN_RANGE macro where appropriate" 3397563ad6c8fc5d9675faf507e52dd2ed284202 "xtensa: Fix instruction counting regarding block move expansion" 6454b4a8f5d90dd355c3c7e31a592a439223b645 "xtensa: Add setmemsi insn pattern" 9aad2b22436d5346fa224e5c14439dcef36cf3dd "xtensa: Improve bswap[sd]i2 insn patterns" e94c6dbfb57a862dd8a8685eabc4886ad1aaea25 "xtensa: fix PR target/105879" 2fcc69d8ce4eddf6dea878a5383254d366e1bb14 "xtensa: Implement bswaphi2 insn pattern" 9777d446e2148ef9a6e9f35db3f4eab99ee8812c "xtensa: Make one_cmplsi2 optimizer-friendly" e44e7face13f38f9b228e2619786ba0add9ef77b "xtensa: Optimize '(~x & y)' to '((x & y) ^ y)'" 29dc90a580bf45f503ed89eb1dc63b5676db776b "xtensa: Add clrsbsi2 insn pattern" 9489a1ab05ad1bda7126da5513f08282da3e531d "xtensa: Tweak some widen multiplications" fddf0e1057fe24eff0d894fbc2959b4086464a96 "xtensa: Consider the Loop Option when setmemsi is expanded to small loop" ccd02e734e0f1742629403b46e5b1c650b00fd65 "xtensa: Improve instruction cost estimation and suggestion" cd02f15f1aecc45b2c2feae16840503549508619 "xtensa: Improve constant synthesis for both integer and floating-point" 1c68ec1f8ab531fba56cccf549ffe592bf622821 "xtensa: Improve shift operations more" e1b193c1cce3a975a9ed60dd0f30182fe0255d7c "xtensa: Simplify conditional branch/move insn patterns" 70ce04ca353bb0cda8321b91a77c2477e26d339b "xtensa: Make use of BALL/BNALL instructions" 077438933cf94f00cc5edf974338c11ba4bf7a39 "xtensa: Optimize bitwise AND operation with some specific forms of constants" 96518f714e3fab53a966a05b8d48011e27c1a718 "xtensa: Document new -mextra-l32r-costs= Xtensa-specific option" 43b0c56fda4bc990e8ee8d6a0b376de7b663bb06 "xtensa: Add support for sibling call optimization" c95e307e3a978166cd5d6817ec9d8293825ff3fb "xtensa: Add some dedicated patterns that correspond to GIMPLE canonicalizations" cfad4856fa46abc878934a9433d0bfc2482ccf00 "xtensa: Eliminate unwanted reg-reg moves during DFmode input reloads" ce3867d414bd7d9e5b6fb2a51b1fb3d9e9e1eae9 "xtensa: Eliminate [DS]Cmode hard register clobber that is immediately followed by whole overwrite the register" 479b6f449ee999501ad6eff0b7db8d0cd5b2d28d "xtensa: Defer storing integer constants into litpool until reload"
6468e23
to
6de5fab
Compare
@jjsuwa-sys3175 are you done pushing changes? I want to rebuilt and publish a new toolchain this weekend... |
yes! i did it :) |
I've started a build just now. Assuming no issues, I'll release and put up a PR in the Arduino repo once done. Thanks again for your strong effort! |
Arrgh, I didn't forget about this, but need to do some debugging. Somehow bit rot has set in and the AARCH64 build (alone) is having issues with the unmodified docker container that built the earlier 10.3 bugfix1 with your fixed LR PR. It's also bombing with the same fault on a later container I've been using on the Pico RP2040 (whose ARM compiler does compile w/o any issue for AARCH64). So I need to do some ugly debugging to figure out WTH is going on only w/the AARCH64 build and it may be a bit. It's not in GCC, but in What's really strange is there are no command changes other than a different cross-host between the AARCH64 and the ARM32/RPi build (and most other Linux-based builds). |
See earlephilhower#29 and earlephilhower#36. List of patches added after earlephilhower#29: 75ab2f0ebd3c6ab678fea03906186068b89f9fbc "xtensa: Apply a few minor fixes " 46880cd8be7c307f147a8785ac8f58e04a35d34e "xtensa: Fix RTL insn cost estimation about relaxed MOVI instructions" ec532b47f1823e71f822c0da781c531ffff67a52 "xtensa: Fix buffer overflow" 773dffc50fbc768e3282455bd4238a67b1481176 "xtensa: Optimize integer constant addition that is between -32896 and 32639"
See earlephilhower#29 and earlephilhower#36. List of patches added after earlephilhower#29: 75ab2f0ebd3c6ab678fea03906186068b89f9fbc "xtensa: Apply a few minor fixes " 46880cd8be7c307f147a8785ac8f58e04a35d34e "xtensa: Fix RTL insn cost estimation about relaxed MOVI instructions" ec532b47f1823e71f822c0da781c531ffff67a52 "xtensa: Fix buffer overflow" 773dffc50fbc768e3282455bd4238a67b1481176 "xtensa: Optimize integer constant addition that is between -32896 and 32639" 46dc26fdfbf3e64f82188e21aa6a13ec23108e8e "Improve initialization of objects when the initializer has trailing zeros." e85c94d1c83072d7b894e44009e876dd41ff778a "xtensa: Minor fix for FP constant synthesis"
See earlephilhower#29 and earlephilhower#36. List of patches added after earlephilhower#29: 75ab2f0ebd3c6ab678fea03906186068b89f9fbc "xtensa: Apply a few minor fixes" 46880cd8be7c307f147a8785ac8f58e04a35d34e "xtensa: Fix RTL insn cost estimation about relaxed MOVI instructions" ec532b47f1823e71f822c0da781c531ffff67a52 "xtensa: Fix buffer overflow" 773dffc50fbc768e3282455bd4238a67b1481176 "xtensa: Optimize integer constant addition that is between -32896 and 32639" 46dc26fdfbf3e64f82188e21aa6a13ec23108e8e "Improve initialization of objects when the initializer has trailing zeros." e85c94d1c83072d7b894e44009e876dd41ff778a "xtensa: Minor fix for FP constant synthesis" 1884f8978237b15013576a720bcb32e7c5647574 "xtensa: constantsynth: Make try to find shorter instruction" d6d8e6a7e1379f9dfdf2f39efcc82d9185cca6d0 "xtensa: Optimize "bitwise AND with imm1" followed by "branch if (not) equal to imm2""
See earlephilhower#29 and earlephilhower#36. List of patches added after earlephilhower#29: 75ab2f0ebd3c6ab678fea03906186068b89f9fbc "xtensa: Apply a few minor fixes" 46880cd8be7c307f147a8785ac8f58e04a35d34e "xtensa: Fix RTL insn cost estimation about relaxed MOVI instructions" ec532b47f1823e71f822c0da781c531ffff67a52 "xtensa: Fix buffer overflow" 773dffc50fbc768e3282455bd4238a67b1481176 "xtensa: Optimize integer constant addition that is between -32896 and 32639" 46dc26fdfbf3e64f82188e21aa6a13ec23108e8e "Improve initialization of objects when the initializer has trailing zeros." e85c94d1c83072d7b894e44009e876dd41ff778a "xtensa: Minor fix for FP constant synthesis" 1884f8978237b15013576a720bcb32e7c5647574 "xtensa: constantsynth: Make try to find shorter instruction" d6d8e6a7e1379f9dfdf2f39efcc82d9185cca6d0 "xtensa: Optimize "bitwise AND with imm1" followed by "branch if (not) equal to imm2"" 2180cdd8a0e65c2790a7732c82de87f83478487b "xtensa: Correct the relative RTX cost that corresponds to the Move Immediate "MOVI" instruction"
See earlephilhower#29 and earlephilhower#36. List of patches added after earlephilhower#29: 75ab2f0ebd3c6ab678fea03906186068b89f9fbc "xtensa: Apply a few minor fixes" 46880cd8be7c307f147a8785ac8f58e04a35d34e "xtensa: Fix RTL insn cost estimation about relaxed MOVI instructions" ec532b47f1823e71f822c0da781c531ffff67a52 "xtensa: Fix buffer overflow" 773dffc50fbc768e3282455bd4238a67b1481176 "xtensa: Optimize integer constant addition that is between -32896 and 32639" 46dc26fdfbf3e64f82188e21aa6a13ec23108e8e "Improve initialization of objects when the initializer has trailing zeros." e85c94d1c83072d7b894e44009e876dd41ff778a "xtensa: Minor fix for FP constant synthesis" 1884f8978237b15013576a720bcb32e7c5647574 "xtensa: constantsynth: Make try to find shorter instruction" d6d8e6a7e1379f9dfdf2f39efcc82d9185cca6d0 "xtensa: Optimize "bitwise AND with imm1" followed by "branch if (not) equal to imm2"" 2180cdd8a0e65c2790a7732c82de87f83478487b "xtensa: Correct the relative RTX cost that corresponds to the Move Immediate "MOVI" instruction" 64cb87b2381aceaa37230bae7f43c7b9f978d3e3 "xtensa: Optimize "bitwise AND NOT with imm" followed by "branch if (not) equal to zero""
See earlephilhower#29 and earlephilhower#36. List of patches added after earlephilhower#29: 75ab2f0ebd3c6ab678fea03906186068b89f9fbc "xtensa: Apply a few minor fixes" 46880cd8be7c307f147a8785ac8f58e04a35d34e "xtensa: Fix RTL insn cost estimation about relaxed MOVI instructions" ec532b47f1823e71f822c0da781c531ffff67a52 "xtensa: Fix buffer overflow" 773dffc50fbc768e3282455bd4238a67b1481176 "xtensa: Optimize integer constant addition that is between -32896 and 32639" 46dc26fdfbf3e64f82188e21aa6a13ec23108e8e "Improve initialization of objects when the initializer has trailing zeros." e85c94d1c83072d7b894e44009e876dd41ff778a "xtensa: Minor fix for FP constant synthesis" 1884f8978237b15013576a720bcb32e7c5647574 "xtensa: constantsynth: Make try to find shorter instruction" d6d8e6a7e1379f9dfdf2f39efcc82d9185cca6d0 "xtensa: Optimize "bitwise AND with imm1" followed by "branch if (not) equal to imm2"" 2180cdd8a0e65c2790a7732c82de87f83478487b "xtensa: Correct the relative RTX cost that corresponds to the Move Immediate "MOVI" instruction" 64cb87b2381aceaa37230bae7f43c7b9f978d3e3 "xtensa: Optimize "bitwise AND NOT with imm" followed by "branch if (not) equal to zero"" 48e9954d0865b5e5e31cb77ad05c45f7206eeb9f "xtensa: Add RTX costs for if_then_else" 2fa8c4a659a19ec971c80704f48f96c13aae9ac3 "xtensa: Fix conflicting hard regno between indirect sibcall fixups and EH_RETURN_STACKADJ_RTX"
See earlephilhower#29 and earlephilhower#36. List of patches added after earlephilhower#29: 75ab2f0ebd3c6ab678fea03906186068b89f9fbc "xtensa: Apply a few minor fixes" 46880cd8be7c307f147a8785ac8f58e04a35d34e "xtensa: Fix RTL insn cost estimation about relaxed MOVI instructions" ec532b47f1823e71f822c0da781c531ffff67a52 "xtensa: Fix buffer overflow" 773dffc50fbc768e3282455bd4238a67b1481176 "xtensa: Optimize integer constant addition that is between -32896 and 32639" 46dc26fdfbf3e64f82188e21aa6a13ec23108e8e "Improve initialization of objects when the initializer has trailing zeros." e85c94d1c83072d7b894e44009e876dd41ff778a "xtensa: Minor fix for FP constant synthesis" 1884f8978237b15013576a720bcb32e7c5647574 "xtensa: constantsynth: Make try to find shorter instruction" d6d8e6a7e1379f9dfdf2f39efcc82d9185cca6d0 "xtensa: Optimize "bitwise AND with imm1" followed by "branch if (not) equal to imm2"" 2180cdd8a0e65c2790a7732c82de87f83478487b "xtensa: Correct the relative RTX cost that corresponds to the Move Immediate "MOVI" instruction" 64cb87b2381aceaa37230bae7f43c7b9f978d3e3 "xtensa: Optimize "bitwise AND NOT with imm" followed by "branch if (not) equal to zero"" 48e9954d0865b5e5e31cb77ad05c45f7206eeb9f "xtensa: Add RTX costs for if_then_else" 2fa8c4a659a19ec971c80704f48f96c13aae9ac3 "xtensa: Fix conflicting hard regno between indirect sibcall fixups and EH_RETURN_STACKADJ_RTX" a2ff389099c325bc1244b1d72744a18c5fa6fda3 "xtensa: Turn on -fsplit-wide-types-early by default"
See earlephilhower#29 and earlephilhower#36. List of patches added after earlephilhower#29: 75ab2f0ebd3c6ab678fea03906186068b89f9fbc "xtensa: Apply a few minor fixes" 46880cd8be7c307f147a8785ac8f58e04a35d34e "xtensa: Fix RTL insn cost estimation about relaxed MOVI instructions" ec532b47f1823e71f822c0da781c531ffff67a52 "xtensa: Fix buffer overflow" 773dffc50fbc768e3282455bd4238a67b1481176 "xtensa: Optimize integer constant addition that is between -32896 and 32639" 46dc26fdfbf3e64f82188e21aa6a13ec23108e8e "Improve initialization of objects when the initializer has trailing zeros." e85c94d1c83072d7b894e44009e876dd41ff778a "xtensa: Minor fix for FP constant synthesis" 1884f8978237b15013576a720bcb32e7c5647574 "xtensa: constantsynth: Make try to find shorter instruction" d6d8e6a7e1379f9dfdf2f39efcc82d9185cca6d0 "xtensa: Optimize "bitwise AND with imm1" followed by "branch if (not) equal to imm2"" 2180cdd8a0e65c2790a7732c82de87f83478487b "xtensa: Correct the relative RTX cost that corresponds to the Move Immediate "MOVI" instruction" 64cb87b2381aceaa37230bae7f43c7b9f978d3e3 "xtensa: Optimize "bitwise AND NOT with imm" followed by "branch if (not) equal to zero"" 48e9954d0865b5e5e31cb77ad05c45f7206eeb9f "xtensa: Add RTX costs for if_then_else" 2fa8c4a659a19ec971c80704f48f96c13aae9ac3 "xtensa: Fix conflicting hard regno between indirect sibcall fixups and EH_RETURN_STACKADJ_RTX" a2ff389099c325bc1244b1d72744a18c5fa6fda3 "xtensa: Turn on -fsplit-wide-types-early by default" dca74793cd42ce4c5319943a516cc5ea7265b6f7 "xtensa: Optimize stack pointer updates in function pro/epilogue under certain conditions" 8731aa98674eda56425ffd652918ce4979631f67 "xtensa: Improve indirect sibling call handling" 06c2756e824cfe409d280fc78a0c4f68a9123e49 "xtensa: Eliminate unused stack frame allocation/freeing" 89afb2e86fcb29c559b2957fdcbea0d01740c49b "xtensa: Make complex hard register clobber elimination more robust and accurate"
See earlephilhower#29 and earlephilhower#36. List of patches added after earlephilhower#29: 75ab2f0ebd3c6ab678fea03906186068b89f9fbc "xtensa: Apply a few minor fixes" 46880cd8be7c307f147a8785ac8f58e04a35d34e "xtensa: Fix RTL insn cost estimation about relaxed MOVI instructions" ec532b47f1823e71f822c0da781c531ffff67a52 "xtensa: Fix buffer overflow" 773dffc50fbc768e3282455bd4238a67b1481176 "xtensa: Optimize integer constant addition that is between -32896 and 32639" 46dc26fdfbf3e64f82188e21aa6a13ec23108e8e "Improve initialization of objects when the initializer has trailing zeros." e85c94d1c83072d7b894e44009e876dd41ff778a "xtensa: Minor fix for FP constant synthesis" 1884f8978237b15013576a720bcb32e7c5647574 "xtensa: constantsynth: Make try to find shorter instruction" d6d8e6a7e1379f9dfdf2f39efcc82d9185cca6d0 "xtensa: Optimize "bitwise AND with imm1" followed by "branch if (not) equal to imm2"" 2180cdd8a0e65c2790a7732c82de87f83478487b "xtensa: Correct the relative RTX cost that corresponds to the Move Immediate "MOVI" instruction" 64cb87b2381aceaa37230bae7f43c7b9f978d3e3 "xtensa: Optimize "bitwise AND NOT with imm" followed by "branch if (not) equal to zero"" 48e9954d0865b5e5e31cb77ad05c45f7206eeb9f "xtensa: Add RTX costs for if_then_else" 2fa8c4a659a19ec971c80704f48f96c13aae9ac3 "xtensa: Fix conflicting hard regno between indirect sibcall fixups and EH_RETURN_STACKADJ_RTX" a2ff389099c325bc1244b1d72744a18c5fa6fda3 "xtensa: Turn on -fsplit-wide-types-early by default" dca74793cd42ce4c5319943a516cc5ea7265b6f7 "xtensa: Optimize stack pointer updates in function pro/epilogue under certain conditions" 8731aa98674eda56425ffd652918ce4979631f67 "xtensa: Improve indirect sibling call handling" 06c2756e824cfe409d280fc78a0c4f68a9123e49 "xtensa: Eliminate unused stack frame allocation/freeing" 89afb2e86fcb29c559b2957fdcbea0d01740c49b "xtensa: Make complex hard register clobber elimination more robust and accurate" 75e5cc9c3aba943819c284902b3792f7150749cf "xtensa: constantsynth: Add new 3-insns synthesis pattern"
See earlephilhower#29 and earlephilhower#36. List of patches added after earlephilhower#29: 75ab2f0ebd3c6ab678fea03906186068b89f9fbc "xtensa: Apply a few minor fixes" 46880cd8be7c307f147a8785ac8f58e04a35d34e "xtensa: Fix RTL insn cost estimation about relaxed MOVI instructions" ec532b47f1823e71f822c0da781c531ffff67a52 "xtensa: Fix buffer overflow" 773dffc50fbc768e3282455bd4238a67b1481176 "xtensa: Optimize integer constant addition that is between -32896 and 32639" 46dc26fdfbf3e64f82188e21aa6a13ec23108e8e "Improve initialization of objects when the initializer has trailing zeros." e85c94d1c83072d7b894e44009e876dd41ff778a "xtensa: Minor fix for FP constant synthesis" 1884f8978237b15013576a720bcb32e7c5647574 "xtensa: constantsynth: Make try to find shorter instruction" d6d8e6a7e1379f9dfdf2f39efcc82d9185cca6d0 "xtensa: Optimize "bitwise AND with imm1" followed by "branch if (not) equal to imm2"" 2180cdd8a0e65c2790a7732c82de87f83478487b "xtensa: Correct the relative RTX cost that corresponds to the Move Immediate "MOVI" instruction" 64cb87b2381aceaa37230bae7f43c7b9f978d3e3 "xtensa: Optimize "bitwise AND NOT with imm" followed by "branch if (not) equal to zero"" 48e9954d0865b5e5e31cb77ad05c45f7206eeb9f "xtensa: Add RTX costs for if_then_else" 2fa8c4a659a19ec971c80704f48f96c13aae9ac3 "xtensa: Fix conflicting hard regno between indirect sibcall fixups and EH_RETURN_STACKADJ_RTX" a2ff389099c325bc1244b1d72744a18c5fa6fda3 "xtensa: Turn on -fsplit-wide-types-early by default" dca74793cd42ce4c5319943a516cc5ea7265b6f7 "xtensa: Optimize stack pointer updates in function pro/epilogue under certain conditions" 8731aa98674eda56425ffd652918ce4979631f67 "xtensa: Improve indirect sibling call handling" 9e0c2696724d4d004ea189a69f15781c7baa68e1 "xtensa: add static PIE support" 06c2756e824cfe409d280fc78a0c4f68a9123e49 "xtensa: Eliminate unused stack frame allocation/freeing" 89afb2e86fcb29c559b2957fdcbea0d01740c49b "xtensa: Make complex hard register clobber elimination more robust and accurate" 75e5cc9c3aba943819c284902b3792f7150749cf "xtensa: constantsynth: Add new 3-insns synthesis pattern" 71cd6a0430ca2a2c44e3cf4cc9f3c96d3aef1ab7 "xtensa: fix builtin_apply return value" 0bf60f68ed9db2e4b373b28c125aeda339f6cd59 "xtensa: implement MI thunk generation for call0 ABI" 66d20d881647e7dd177355a851d7839394ab8341 "xtensa: enable section anchors support"
See earlephilhower#29 and earlephilhower#36. List of patches added after earlephilhower#29: 75ab2f0ebd3c6ab678fea03906186068b89f9fbc "xtensa: Apply a few minor fixes" 46880cd8be7c307f147a8785ac8f58e04a35d34e "xtensa: Fix RTL insn cost estimation about relaxed MOVI instructions" ec532b47f1823e71f822c0da781c531ffff67a52 "xtensa: Fix buffer overflow" 773dffc50fbc768e3282455bd4238a67b1481176 "xtensa: Optimize integer constant addition that is between -32896 and 32639" 46dc26fdfbf3e64f82188e21aa6a13ec23108e8e "Improve initialization of objects when the initializer has trailing zeros." e85c94d1c83072d7b894e44009e876dd41ff778a "xtensa: Minor fix for FP constant synthesis" 1884f8978237b15013576a720bcb32e7c5647574 "xtensa: constantsynth: Make try to find shorter instruction" d6d8e6a7e1379f9dfdf2f39efcc82d9185cca6d0 "xtensa: Optimize "bitwise AND with imm1" followed by "branch if (not) equal to imm2"" 2180cdd8a0e65c2790a7732c82de87f83478487b "xtensa: Correct the relative RTX cost that corresponds to the Move Immediate "MOVI" instruction" 64cb87b2381aceaa37230bae7f43c7b9f978d3e3 "xtensa: Optimize "bitwise AND NOT with imm" followed by "branch if (not) equal to zero"" 48e9954d0865b5e5e31cb77ad05c45f7206eeb9f "xtensa: Add RTX costs for if_then_else" 2fa8c4a659a19ec971c80704f48f96c13aae9ac3 "xtensa: Fix conflicting hard regno between indirect sibcall fixups and EH_RETURN_STACKADJ_RTX" a2ff389099c325bc1244b1d72744a18c5fa6fda3 "xtensa: Turn on -fsplit-wide-types-early by default" dca74793cd42ce4c5319943a516cc5ea7265b6f7 "xtensa: Optimize stack pointer updates in function pro/epilogue under certain conditions" 8731aa98674eda56425ffd652918ce4979631f67 "xtensa: Improve indirect sibling call handling" 9e0c2696724d4d004ea189a69f15781c7baa68e1 "xtensa: add static PIE support" 06c2756e824cfe409d280fc78a0c4f68a9123e49 "xtensa: Eliminate unused stack frame allocation/freeing" 89afb2e86fcb29c559b2957fdcbea0d01740c49b "xtensa: Make complex hard register clobber elimination more robust and accurate" 75e5cc9c3aba943819c284902b3792f7150749cf "xtensa: constantsynth: Add new 3-insns synthesis pattern" 71cd6a0430ca2a2c44e3cf4cc9f3c96d3aef1ab7 "xtensa: fix builtin_apply return value" 0bf60f68ed9db2e4b373b28c125aeda339f6cd59 "xtensa: implement MI thunk generation for call0 ABI" 66d20d881647e7dd177355a851d7839394ab8341 "xtensa: enable section anchors support" 4f3f0296acbb99a0fa2867986956e53e487206a9 "xtensa: Prepare the transition from Reload to LRA"
See earlephilhower#29 and earlephilhower#36. List of patches added after earlephilhower#29: 75ab2f0ebd3c6ab678fea03906186068b89f9fbc "xtensa: Apply a few minor fixes" 46880cd8be7c307f147a8785ac8f58e04a35d34e "xtensa: Fix RTL insn cost estimation about relaxed MOVI instructions" ec532b47f1823e71f822c0da781c531ffff67a52 "xtensa: Fix buffer overflow" 773dffc50fbc768e3282455bd4238a67b1481176 "xtensa: Optimize integer constant addition that is between -32896 and 32639" 46dc26fdfbf3e64f82188e21aa6a13ec23108e8e "Improve initialization of objects when the initializer has trailing zeros." e85c94d1c83072d7b894e44009e876dd41ff778a "xtensa: Minor fix for FP constant synthesis" 1884f8978237b15013576a720bcb32e7c5647574 "xtensa: constantsynth: Make try to find shorter instruction" d6d8e6a7e1379f9dfdf2f39efcc82d9185cca6d0 "xtensa: Optimize "bitwise AND with imm1" followed by "branch if (not) equal to imm2"" 2180cdd8a0e65c2790a7732c82de87f83478487b "xtensa: Correct the relative RTX cost that corresponds to the Move Immediate "MOVI" instruction" 64cb87b2381aceaa37230bae7f43c7b9f978d3e3 "xtensa: Optimize "bitwise AND NOT with imm" followed by "branch if (not) equal to zero"" 48e9954d0865b5e5e31cb77ad05c45f7206eeb9f "xtensa: Add RTX costs for if_then_else" 2fa8c4a659a19ec971c80704f48f96c13aae9ac3 "xtensa: Fix conflicting hard regno between indirect sibcall fixups and EH_RETURN_STACKADJ_RTX" a2ff389099c325bc1244b1d72744a18c5fa6fda3 "xtensa: Turn on -fsplit-wide-types-early by default" dca74793cd42ce4c5319943a516cc5ea7265b6f7 "xtensa: Optimize stack pointer updates in function pro/epilogue under certain conditions" 8731aa98674eda56425ffd652918ce4979631f67 "xtensa: Improve indirect sibling call handling" 9e0c2696724d4d004ea189a69f15781c7baa68e1 "xtensa: add static PIE support" 06c2756e824cfe409d280fc78a0c4f68a9123e49 "xtensa: Eliminate unused stack frame allocation/freeing" 89afb2e86fcb29c559b2957fdcbea0d01740c49b "xtensa: Make complex hard register clobber elimination more robust and accurate" 75e5cc9c3aba943819c284902b3792f7150749cf "xtensa: constantsynth: Add new 3-insns synthesis pattern" 71cd6a0430ca2a2c44e3cf4cc9f3c96d3aef1ab7 "xtensa: fix builtin_apply return value" 0bf60f68ed9db2e4b373b28c125aeda339f6cd59 "xtensa: implement MI thunk generation for call0 ABI" 66d20d881647e7dd177355a851d7839394ab8341 "xtensa: enable section anchors support" 4f3f0296acbb99a0fa2867986956e53e487206a9 "xtensa: Prepare the transition from Reload to LRA" e0927d7ddca154b1a5151da698e205593cb8912e "xtensa: Make register A0 allocable for the CALL0 ABI"
See earlephilhower#29 and earlephilhower#36. List of patches added after earlephilhower#29: 75ab2f0ebd3c6ab678fea03906186068b89f9fbc "xtensa: Apply a few minor fixes" 46880cd8be7c307f147a8785ac8f58e04a35d34e "xtensa: Fix RTL insn cost estimation about relaxed MOVI instructions" ec532b47f1823e71f822c0da781c531ffff67a52 "xtensa: Fix buffer overflow" 773dffc50fbc768e3282455bd4238a67b1481176 "xtensa: Optimize integer constant addition that is between -32896 and 32639" 46dc26fdfbf3e64f82188e21aa6a13ec23108e8e "Improve initialization of objects when the initializer has trailing zeros." e85c94d1c83072d7b894e44009e876dd41ff778a "xtensa: Minor fix for FP constant synthesis" 1884f8978237b15013576a720bcb32e7c5647574 "xtensa: constantsynth: Make try to find shorter instruction" d6d8e6a7e1379f9dfdf2f39efcc82d9185cca6d0 "xtensa: Optimize "bitwise AND with imm1" followed by "branch if (not) equal to imm2"" 2180cdd8a0e65c2790a7732c82de87f83478487b "xtensa: Correct the relative RTX cost that corresponds to the Move Immediate "MOVI" instruction" 64cb87b2381aceaa37230bae7f43c7b9f978d3e3 "xtensa: Optimize "bitwise AND NOT with imm" followed by "branch if (not) equal to zero"" 48e9954d0865b5e5e31cb77ad05c45f7206eeb9f "xtensa: Add RTX costs for if_then_else" 2fa8c4a659a19ec971c80704f48f96c13aae9ac3 "xtensa: Fix conflicting hard regno between indirect sibcall fixups and EH_RETURN_STACKADJ_RTX" a2ff389099c325bc1244b1d72744a18c5fa6fda3 "xtensa: Turn on -fsplit-wide-types-early by default" dca74793cd42ce4c5319943a516cc5ea7265b6f7 "xtensa: Optimize stack pointer updates in function pro/epilogue under certain conditions" 8731aa98674eda56425ffd652918ce4979631f67 "xtensa: Improve indirect sibling call handling" 9e0c2696724d4d004ea189a69f15781c7baa68e1 "xtensa: add static PIE support" 06c2756e824cfe409d280fc78a0c4f68a9123e49 "xtensa: Eliminate unused stack frame allocation/freeing" 89afb2e86fcb29c559b2957fdcbea0d01740c49b "xtensa: Make complex hard register clobber elimination more robust and accurate" 75e5cc9c3aba943819c284902b3792f7150749cf "xtensa: constantsynth: Add new 3-insns synthesis pattern" 71cd6a0430ca2a2c44e3cf4cc9f3c96d3aef1ab7 "xtensa: fix builtin_apply return value" 0bf60f68ed9db2e4b373b28c125aeda339f6cd59 "xtensa: implement MI thunk generation for call0 ABI" 66d20d881647e7dd177355a851d7839394ab8341 "xtensa: enable section anchors support" 4f3f0296acbb99a0fa2867986956e53e487206a9 "xtensa: Prepare the transition from Reload to LRA" e0927d7ddca154b1a5151da698e205593cb8912e "xtensa: Make register A0 allocable for the CALL0 ABI" f896c13489d22b30d01257bc8316ab97b3359d1c "xtensa: Fix out-of-bounds array access in the movdi pattern"
See earlephilhower#29 and earlephilhower#36. List of patches added after earlephilhower#29: 75ab2f0ebd3c6ab678fea03906186068b89f9fbc "xtensa: Apply a few minor fixes" 46880cd8be7c307f147a8785ac8f58e04a35d34e "xtensa: Fix RTL insn cost estimation about relaxed MOVI instructions" ec532b47f1823e71f822c0da781c531ffff67a52 "xtensa: Fix buffer overflow" 773dffc50fbc768e3282455bd4238a67b1481176 "xtensa: Optimize integer constant addition that is between -32896 and 32639" 46dc26fdfbf3e64f82188e21aa6a13ec23108e8e "Improve initialization of objects when the initializer has trailing zeros." e85c94d1c83072d7b894e44009e876dd41ff778a "xtensa: Minor fix for FP constant synthesis" 1884f8978237b15013576a720bcb32e7c5647574 "xtensa: constantsynth: Make try to find shorter instruction" d6d8e6a7e1379f9dfdf2f39efcc82d9185cca6d0 "xtensa: Optimize "bitwise AND with imm1" followed by "branch if (not) equal to imm2"" 2180cdd8a0e65c2790a7732c82de87f83478487b "xtensa: Correct the relative RTX cost that corresponds to the Move Immediate "MOVI" instruction" 64cb87b2381aceaa37230bae7f43c7b9f978d3e3 "xtensa: Optimize "bitwise AND NOT with imm" followed by "branch if (not) equal to zero"" 48e9954d0865b5e5e31cb77ad05c45f7206eeb9f "xtensa: Add RTX costs for if_then_else" 2fa8c4a659a19ec971c80704f48f96c13aae9ac3 "xtensa: Fix conflicting hard regno between indirect sibcall fixups and EH_RETURN_STACKADJ_RTX" a2ff389099c325bc1244b1d72744a18c5fa6fda3 "xtensa: Turn on -fsplit-wide-types-early by default" dca74793cd42ce4c5319943a516cc5ea7265b6f7 "xtensa: Optimize stack pointer updates in function pro/epilogue under certain conditions" 8731aa98674eda56425ffd652918ce4979631f67 "xtensa: Improve indirect sibling call handling" 9e0c2696724d4d004ea189a69f15781c7baa68e1 "xtensa: add static PIE support" 06c2756e824cfe409d280fc78a0c4f68a9123e49 "xtensa: Eliminate unused stack frame allocation/freeing" 89afb2e86fcb29c559b2957fdcbea0d01740c49b "xtensa: Make complex hard register clobber elimination more robust and accurate" 75e5cc9c3aba943819c284902b3792f7150749cf "xtensa: constantsynth: Add new 3-insns synthesis pattern" 71cd6a0430ca2a2c44e3cf4cc9f3c96d3aef1ab7 "xtensa: fix builtin_apply return value" 0bf60f68ed9db2e4b373b28c125aeda339f6cd59 "xtensa: implement MI thunk generation for call0 ABI" 66d20d881647e7dd177355a851d7839394ab8341 "xtensa: enable section anchors support" 4f3f0296acbb99a0fa2867986956e53e487206a9 "xtensa: Prepare the transition from Reload to LRA" e0927d7ddca154b1a5151da698e205593cb8912e "xtensa: Make register A0 allocable for the CALL0 ABI" f896c13489d22b30d01257bc8316ab97b3359d1c "xtensa: Fix out-of-bounds array access in the movdi pattern" 89d5982b8f92c7441e34f8b65466840b4fe43687 "xtensa: Tabify, and trim trailing spaces" b22f86ba9582b1483ff970aa73740864ceaa0860 "xtensa: Clean up xtensa_expand_prologue" 98a1b4d073b9993b0acda525332225f90714e2ec "xtensa: Change GP_RETURN{,_REG_COUNT} to GP_RETURN_{FIRST,LAST}" 48a0e822666b79600cae7401f9a3e8cf16bc3fd1 "xtensa: Generate density instructions in set_frame_ptr" b92f1c2dcc7b79467662321615f6eafb0c441c7d "xtensa: use define_c_enums instead of define_constants" 65fed695f7b2eb99dfd679fbdfcf510104de2fb8 "xtensa: Check DF availability before use" da086e472b61245dedcb2463c53f84072773d1f5 "xtensa: use GP_RETURN_* instead of magic constant" b095a1db483c1a9522a768e52743440d6987c2cd "xtensa: Optimize stack frame adjustment more" e3a4bd0bbdccdde0cff85f93064b01a44fb10d2a "xtensa: Optimize bitwise splicing operation" b399afd22c6ea50722bbff3247d52f3bd14bf2b6 "xtensa: Make instruction cost estimation for size more accurate" bb65bd084a8739feb5b85f87135c531fc8b86572 "xtensa: Tune "*btrue" insn pattern" 117be79bd84ed21b47588d0cd86d72d5d1757cae "xtensa: Optimize ctzsi2 and ffssi2 a bit"
See earlephilhower#29 and earlephilhower#36. List of patches added after earlephilhower#29: 75ab2f0ebd3c6ab678fea03906186068b89f9fbc "xtensa: Apply a few minor fixes" 46880cd8be7c307f147a8785ac8f58e04a35d34e "xtensa: Fix RTL insn cost estimation about relaxed MOVI instructions" ec532b47f1823e71f822c0da781c531ffff67a52 "xtensa: Fix buffer overflow" 773dffc50fbc768e3282455bd4238a67b1481176 "xtensa: Optimize integer constant addition that is between -32896 and 32639" 46dc26fdfbf3e64f82188e21aa6a13ec23108e8e "Improve initialization of objects when the initializer has trailing zeros." e85c94d1c83072d7b894e44009e876dd41ff778a "xtensa: Minor fix for FP constant synthesis" 1884f8978237b15013576a720bcb32e7c5647574 "xtensa: constantsynth: Make try to find shorter instruction" d6d8e6a7e1379f9dfdf2f39efcc82d9185cca6d0 "xtensa: Optimize "bitwise AND with imm1" followed by "branch if (not) equal to imm2"" 2180cdd8a0e65c2790a7732c82de87f83478487b "xtensa: Correct the relative RTX cost that corresponds to the Move Immediate "MOVI" instruction" 64cb87b2381aceaa37230bae7f43c7b9f978d3e3 "xtensa: Optimize "bitwise AND NOT with imm" followed by "branch if (not) equal to zero"" 48e9954d0865b5e5e31cb77ad05c45f7206eeb9f "xtensa: Add RTX costs for if_then_else" 2fa8c4a659a19ec971c80704f48f96c13aae9ac3 "xtensa: Fix conflicting hard regno between indirect sibcall fixups and EH_RETURN_STACKADJ_RTX" a2ff389099c325bc1244b1d72744a18c5fa6fda3 "xtensa: Turn on -fsplit-wide-types-early by default" dca74793cd42ce4c5319943a516cc5ea7265b6f7 "xtensa: Optimize stack pointer updates in function pro/epilogue under certain conditions" 8731aa98674eda56425ffd652918ce4979631f67 "xtensa: Improve indirect sibling call handling" 9e0c2696724d4d004ea189a69f15781c7baa68e1 "xtensa: add static PIE support" 06c2756e824cfe409d280fc78a0c4f68a9123e49 "xtensa: Eliminate unused stack frame allocation/freeing" 89afb2e86fcb29c559b2957fdcbea0d01740c49b "xtensa: Make complex hard register clobber elimination more robust and accurate" 75e5cc9c3aba943819c284902b3792f7150749cf "xtensa: constantsynth: Add new 3-insns synthesis pattern" 71cd6a0430ca2a2c44e3cf4cc9f3c96d3aef1ab7 "xtensa: fix builtin_apply return value" 0bf60f68ed9db2e4b373b28c125aeda339f6cd59 "xtensa: implement MI thunk generation for call0 ABI" 66d20d881647e7dd177355a851d7839394ab8341 "xtensa: enable section anchors support" 4f3f0296acbb99a0fa2867986956e53e487206a9 "xtensa: Prepare the transition from Reload to LRA" e0927d7ddca154b1a5151da698e205593cb8912e "xtensa: Make register A0 allocable for the CALL0 ABI" f896c13489d22b30d01257bc8316ab97b3359d1c "xtensa: Fix out-of-bounds array access in the movdi pattern" 89d5982b8f92c7441e34f8b65466840b4fe43687 "xtensa: Tabify, and trim trailing spaces" b22f86ba9582b1483ff970aa73740864ceaa0860 "xtensa: Clean up xtensa_expand_prologue" 98a1b4d073b9993b0acda525332225f90714e2ec "xtensa: Change GP_RETURN{,_REG_COUNT} to GP_RETURN_{FIRST,LAST}" 48a0e822666b79600cae7401f9a3e8cf16bc3fd1 "xtensa: Generate density instructions in set_frame_ptr" b92f1c2dcc7b79467662321615f6eafb0c441c7d "xtensa: use define_c_enums instead of define_constants" 65fed695f7b2eb99dfd679fbdfcf510104de2fb8 "xtensa: Check DF availability before use" da086e472b61245dedcb2463c53f84072773d1f5 "xtensa: use GP_RETURN_* instead of magic constant" b095a1db483c1a9522a768e52743440d6987c2cd "xtensa: Optimize stack frame adjustment more" e3a4bd0bbdccdde0cff85f93064b01a44fb10d2a "xtensa: Optimize bitwise splicing operation" b399afd22c6ea50722bbff3247d52f3bd14bf2b6 "xtensa: Make instruction cost estimation for size more accurate" bb65bd084a8739feb5b85f87135c531fc8b86572 "xtensa: Tune "*btrue" insn pattern" 117be79bd84ed21b47588d0cd86d72d5d1757cae "xtensa: Optimize ctzsi2 and ffssi2 a bit" ff6c7617102df365918402c6ccc8e497c47dbe60 "xtensa: Remove old broken tweak for leaf function"
See earlephilhower#29 and earlephilhower#36. List of patches added after earlephilhower#29: 75ab2f0ebd3c6ab678fea03906186068b89f9fbc "xtensa: Apply a few minor fixes" 46880cd8be7c307f147a8785ac8f58e04a35d34e "xtensa: Fix RTL insn cost estimation about relaxed MOVI instructions" ec532b47f1823e71f822c0da781c531ffff67a52 "xtensa: Fix buffer overflow" 773dffc50fbc768e3282455bd4238a67b1481176 "xtensa: Optimize integer constant addition that is between -32896 and 32639" 46dc26fdfbf3e64f82188e21aa6a13ec23108e8e "Improve initialization of objects when the initializer has trailing zeros." e85c94d1c83072d7b894e44009e876dd41ff778a "xtensa: Minor fix for FP constant synthesis" 1884f8978237b15013576a720bcb32e7c5647574 "xtensa: constantsynth: Make try to find shorter instruction" d6d8e6a7e1379f9dfdf2f39efcc82d9185cca6d0 "xtensa: Optimize "bitwise AND with imm1" followed by "branch if (not) equal to imm2"" 2180cdd8a0e65c2790a7732c82de87f83478487b "xtensa: Correct the relative RTX cost that corresponds to the Move Immediate "MOVI" instruction" 64cb87b2381aceaa37230bae7f43c7b9f978d3e3 "xtensa: Optimize "bitwise AND NOT with imm" followed by "branch if (not) equal to zero"" 48e9954d0865b5e5e31cb77ad05c45f7206eeb9f "xtensa: Add RTX costs for if_then_else" 2fa8c4a659a19ec971c80704f48f96c13aae9ac3 "xtensa: Fix conflicting hard regno between indirect sibcall fixups and EH_RETURN_STACKADJ_RTX" a2ff389099c325bc1244b1d72744a18c5fa6fda3 "xtensa: Turn on -fsplit-wide-types-early by default" dca74793cd42ce4c5319943a516cc5ea7265b6f7 "xtensa: Optimize stack pointer updates in function pro/epilogue under certain conditions" 8731aa98674eda56425ffd652918ce4979631f67 "xtensa: Improve indirect sibling call handling" 9e0c2696724d4d004ea189a69f15781c7baa68e1 "xtensa: add static PIE support" 06c2756e824cfe409d280fc78a0c4f68a9123e49 "xtensa: Eliminate unused stack frame allocation/freeing" 89afb2e86fcb29c559b2957fdcbea0d01740c49b "xtensa: Make complex hard register clobber elimination more robust and accurate" 75e5cc9c3aba943819c284902b3792f7150749cf "xtensa: constantsynth: Add new 3-insns synthesis pattern" 71cd6a0430ca2a2c44e3cf4cc9f3c96d3aef1ab7 "xtensa: fix builtin_apply return value" 0bf60f68ed9db2e4b373b28c125aeda339f6cd59 "xtensa: implement MI thunk generation for call0 ABI" 66d20d881647e7dd177355a851d7839394ab8341 "xtensa: enable section anchors support" 4f3f0296acbb99a0fa2867986956e53e487206a9 "xtensa: Prepare the transition from Reload to LRA" e0927d7ddca154b1a5151da698e205593cb8912e "xtensa: Make register A0 allocable for the CALL0 ABI" f896c13489d22b30d01257bc8316ab97b3359d1c "xtensa: Fix out-of-bounds array access in the movdi pattern" 89d5982b8f92c7441e34f8b65466840b4fe43687 "xtensa: Tabify, and trim trailing spaces" b22f86ba9582b1483ff970aa73740864ceaa0860 "xtensa: Clean up xtensa_expand_prologue" 98a1b4d073b9993b0acda525332225f90714e2ec "xtensa: Change GP_RETURN{,_REG_COUNT} to GP_RETURN_{FIRST,LAST}" 48a0e822666b79600cae7401f9a3e8cf16bc3fd1 "xtensa: Generate density instructions in set_frame_ptr" b92f1c2dcc7b79467662321615f6eafb0c441c7d "xtensa: use define_c_enums instead of define_constants" 65fed695f7b2eb99dfd679fbdfcf510104de2fb8 "xtensa: Check DF availability before use" da086e472b61245dedcb2463c53f84072773d1f5 "xtensa: use GP_RETURN_* instead of magic constant" b095a1db483c1a9522a768e52743440d6987c2cd "xtensa: Optimize stack frame adjustment more" e3a4bd0bbdccdde0cff85f93064b01a44fb10d2a "xtensa: Optimize bitwise splicing operation" b399afd22c6ea50722bbff3247d52f3bd14bf2b6 "xtensa: Make instruction cost estimation for size more accurate" bb65bd084a8739feb5b85f87135c531fc8b86572 "xtensa: Tune "*btrue" insn pattern" 117be79bd84ed21b47588d0cd86d72d5d1757cae "xtensa: Optimize ctzsi2 and ffssi2 a bit" ff6c7617102df365918402c6ccc8e497c47dbe60 "xtensa: Remove old broken tweak for leaf function" a4b05944b7d409682197a9f50759a4ed97145e23 "xtensa: Optimize inversion of the MSB"
See earlephilhower#29 and earlephilhower#36. List of patches added after earlephilhower#29: 75ab2f0ebd3c6ab678fea03906186068b89f9fbc "xtensa: Apply a few minor fixes" 46880cd8be7c307f147a8785ac8f58e04a35d34e "xtensa: Fix RTL insn cost estimation about relaxed MOVI instructions" ec532b47f1823e71f822c0da781c531ffff67a52 "xtensa: Fix buffer overflow" 773dffc50fbc768e3282455bd4238a67b1481176 "xtensa: Optimize integer constant addition that is between -32896 and 32639" 46dc26fdfbf3e64f82188e21aa6a13ec23108e8e "Improve initialization of objects when the initializer has trailing zeros." e85c94d1c83072d7b894e44009e876dd41ff778a "xtensa: Minor fix for FP constant synthesis" 1884f8978237b15013576a720bcb32e7c5647574 "xtensa: constantsynth: Make try to find shorter instruction" d6d8e6a7e1379f9dfdf2f39efcc82d9185cca6d0 "xtensa: Optimize "bitwise AND with imm1" followed by "branch if (not) equal to imm2"" 2180cdd8a0e65c2790a7732c82de87f83478487b "xtensa: Correct the relative RTX cost that corresponds to the Move Immediate "MOVI" instruction" 64cb87b2381aceaa37230bae7f43c7b9f978d3e3 "xtensa: Optimize "bitwise AND NOT with imm" followed by "branch if (not) equal to zero"" 48e9954d0865b5e5e31cb77ad05c45f7206eeb9f "xtensa: Add RTX costs for if_then_else" 2fa8c4a659a19ec971c80704f48f96c13aae9ac3 "xtensa: Fix conflicting hard regno between indirect sibcall fixups and EH_RETURN_STACKADJ_RTX" a2ff389099c325bc1244b1d72744a18c5fa6fda3 "xtensa: Turn on -fsplit-wide-types-early by default" dca74793cd42ce4c5319943a516cc5ea7265b6f7 "xtensa: Optimize stack pointer updates in function pro/epilogue under certain conditions" 8731aa98674eda56425ffd652918ce4979631f67 "xtensa: Improve indirect sibling call handling" 9e0c2696724d4d004ea189a69f15781c7baa68e1 "xtensa: add static PIE support" 06c2756e824cfe409d280fc78a0c4f68a9123e49 "xtensa: Eliminate unused stack frame allocation/freeing" 89afb2e86fcb29c559b2957fdcbea0d01740c49b "xtensa: Make complex hard register clobber elimination more robust and accurate" 75e5cc9c3aba943819c284902b3792f7150749cf "xtensa: constantsynth: Add new 3-insns synthesis pattern" 71cd6a0430ca2a2c44e3cf4cc9f3c96d3aef1ab7 "xtensa: fix builtin_apply return value" 0bf60f68ed9db2e4b373b28c125aeda339f6cd59 "xtensa: implement MI thunk generation for call0 ABI" 66d20d881647e7dd177355a851d7839394ab8341 "xtensa: enable section anchors support" 4f3f0296acbb99a0fa2867986956e53e487206a9 "xtensa: Prepare the transition from Reload to LRA" e0927d7ddca154b1a5151da698e205593cb8912e "xtensa: Make register A0 allocable for the CALL0 ABI" f896c13489d22b30d01257bc8316ab97b3359d1c "xtensa: Fix out-of-bounds array access in the movdi pattern" 89d5982b8f92c7441e34f8b65466840b4fe43687 "xtensa: Tabify, and trim trailing spaces" b22f86ba9582b1483ff970aa73740864ceaa0860 "xtensa: Clean up xtensa_expand_prologue" 98a1b4d073b9993b0acda525332225f90714e2ec "xtensa: Change GP_RETURN{,_REG_COUNT} to GP_RETURN_{FIRST,LAST}" 48a0e822666b79600cae7401f9a3e8cf16bc3fd1 "xtensa: Generate density instructions in set_frame_ptr" b92f1c2dcc7b79467662321615f6eafb0c441c7d "xtensa: use define_c_enums instead of define_constants" 65fed695f7b2eb99dfd679fbdfcf510104de2fb8 "xtensa: Check DF availability before use" da086e472b61245dedcb2463c53f84072773d1f5 "xtensa: use GP_RETURN_* instead of magic constant" b095a1db483c1a9522a768e52743440d6987c2cd "xtensa: Optimize stack frame adjustment more" e3a4bd0bbdccdde0cff85f93064b01a44fb10d2a "xtensa: Optimize bitwise splicing operation" b399afd22c6ea50722bbff3247d52f3bd14bf2b6 "xtensa: Make instruction cost estimation for size more accurate" bb65bd084a8739feb5b85f87135c531fc8b86572 "xtensa: Tune "*btrue" insn pattern" 117be79bd84ed21b47588d0cd86d72d5d1757cae "xtensa: Optimize ctzsi2 and ffssi2 a bit" ff6c7617102df365918402c6ccc8e497c47dbe60 "xtensa: Remove old broken tweak for leaf function" a4b05944b7d409682197a9f50759a4ed97145e23 "xtensa: Optimize inversion of the MSB" 1c407dc088231ba5f2cc63d9278f4b797db48de1 "xtensa: Revise complex hard register clobber elimination" a804419c89db9e1c0b99e772dda6c95095bab0bf "xtensa: Enforce return address saving when -Og is specified"
See earlephilhower#29 and earlephilhower#36. List of patches added after earlephilhower#29: 75ab2f0ebd3c6ab678fea03906186068b89f9fbc "xtensa: Apply a few minor fixes" 46880cd8be7c307f147a8785ac8f58e04a35d34e "xtensa: Fix RTL insn cost estimation about relaxed MOVI instructions" ec532b47f1823e71f822c0da781c531ffff67a52 "xtensa: Fix buffer overflow" 773dffc50fbc768e3282455bd4238a67b1481176 "xtensa: Optimize integer constant addition that is between -32896 and 32639" 46dc26fdfbf3e64f82188e21aa6a13ec23108e8e "Improve initialization of objects when the initializer has trailing zeros." e85c94d1c83072d7b894e44009e876dd41ff778a "xtensa: Minor fix for FP constant synthesis" 1884f8978237b15013576a720bcb32e7c5647574 "xtensa: constantsynth: Make try to find shorter instruction" d6d8e6a7e1379f9dfdf2f39efcc82d9185cca6d0 "xtensa: Optimize "bitwise AND with imm1" followed by "branch if (not) equal to imm2"" 2180cdd8a0e65c2790a7732c82de87f83478487b "xtensa: Correct the relative RTX cost that corresponds to the Move Immediate "MOVI" instruction" 64cb87b2381aceaa37230bae7f43c7b9f978d3e3 "xtensa: Optimize "bitwise AND NOT with imm" followed by "branch if (not) equal to zero"" 48e9954d0865b5e5e31cb77ad05c45f7206eeb9f "xtensa: Add RTX costs for if_then_else" 2fa8c4a659a19ec971c80704f48f96c13aae9ac3 "xtensa: Fix conflicting hard regno between indirect sibcall fixups and EH_RETURN_STACKADJ_RTX" a2ff389099c325bc1244b1d72744a18c5fa6fda3 "xtensa: Turn on -fsplit-wide-types-early by default" dca74793cd42ce4c5319943a516cc5ea7265b6f7 "xtensa: Optimize stack pointer updates in function pro/epilogue under certain conditions" 8731aa98674eda56425ffd652918ce4979631f67 "xtensa: Improve indirect sibling call handling" 9e0c2696724d4d004ea189a69f15781c7baa68e1 "xtensa: add static PIE support" 06c2756e824cfe409d280fc78a0c4f68a9123e49 "xtensa: Eliminate unused stack frame allocation/freeing" 89afb2e86fcb29c559b2957fdcbea0d01740c49b "xtensa: Make complex hard register clobber elimination more robust and accurate" 75e5cc9c3aba943819c284902b3792f7150749cf "xtensa: constantsynth: Add new 3-insns synthesis pattern" 71cd6a0430ca2a2c44e3cf4cc9f3c96d3aef1ab7 "xtensa: fix builtin_apply return value" 0bf60f68ed9db2e4b373b28c125aeda339f6cd59 "xtensa: implement MI thunk generation for call0 ABI" 66d20d881647e7dd177355a851d7839394ab8341 "xtensa: enable section anchors support" 4f3f0296acbb99a0fa2867986956e53e487206a9 "xtensa: Prepare the transition from Reload to LRA" e0927d7ddca154b1a5151da698e205593cb8912e "xtensa: Make register A0 allocable for the CALL0 ABI" f896c13489d22b30d01257bc8316ab97b3359d1c "xtensa: Fix out-of-bounds array access in the movdi pattern" 89d5982b8f92c7441e34f8b65466840b4fe43687 "xtensa: Tabify, and trim trailing spaces" b22f86ba9582b1483ff970aa73740864ceaa0860 "xtensa: Clean up xtensa_expand_prologue" 98a1b4d073b9993b0acda525332225f90714e2ec "xtensa: Change GP_RETURN{,_REG_COUNT} to GP_RETURN_{FIRST,LAST}" 48a0e822666b79600cae7401f9a3e8cf16bc3fd1 "xtensa: Generate density instructions in set_frame_ptr" b92f1c2dcc7b79467662321615f6eafb0c441c7d "xtensa: use define_c_enums instead of define_constants" 65fed695f7b2eb99dfd679fbdfcf510104de2fb8 "xtensa: Check DF availability before use" da086e472b61245dedcb2463c53f84072773d1f5 "xtensa: use GP_RETURN_* instead of magic constant" b095a1db483c1a9522a768e52743440d6987c2cd "xtensa: Optimize stack frame adjustment more" e3a4bd0bbdccdde0cff85f93064b01a44fb10d2a "xtensa: Optimize bitwise splicing operation" b399afd22c6ea50722bbff3247d52f3bd14bf2b6 "xtensa: Make instruction cost estimation for size more accurate" bb65bd084a8739feb5b85f87135c531fc8b86572 "xtensa: Tune "*btrue" insn pattern" 117be79bd84ed21b47588d0cd86d72d5d1757cae "xtensa: Optimize ctzsi2 and ffssi2 a bit" ff6c7617102df365918402c6ccc8e497c47dbe60 "xtensa: Remove old broken tweak for leaf function" a4b05944b7d409682197a9f50759a4ed97145e23 "xtensa: Optimize inversion of the MSB" 1c407dc088231ba5f2cc63d9278f4b797db48de1 "xtensa: Revise complex hard register clobber elimination" a804419c89db9e1c0b99e772dda6c95095bab0bf "xtensa: Enforce return address saving when -Og is specified" 782e442e4f3b88937a725a01245dd749f3f893b9 "xtensa: fix PR target/108876" 4f609c6f762832e43524352527a7ecbea2698ff9 "xtensa: Fix missing mode warnings in machine description" 33e4559305e6f1adaa1b2b59f645d54fd98e5bbe "xtensa: Eliminate the use of callee-saved register that saves and restores only once" f83e76c3f998c8708fe2ddca16ae3f317c39c37a "xtensa: Eliminate unnecessary general-purpose reg-reg moves"
this PR includes:
__moddi3()
,__divmoddi4()
and__udivmoddi4()
@ libgcc.a with no code modificationsmemset()
bswap()
in order to take advantage of GIMPLE manual byte-swapping recognitionlist of all patches applied: