Revert the following commit to work around a bootstrap comparison failure on ARMv7, as reported at . commit f6ab85b7049a03962ea98924d00802da357a1ad3 Author: renlin Date: Wed Dec 2 14:06:31 2015 +0000 [PR67383][ARM][4.9]Backport of "Allow any register for DImode values in Thumb2" This partially fix PR67383. It allows the reload more flexibility to choose spilling pseudo registers. gcc/ChangeLog: 2015-12-02 Renlin Li Backport from mainline. 2014-04-22 Ramana Radhakrishnan * config/arm/arm.c (arm_hard_regno_mode_ok): Loosen restrictions on core registers for DImode values in Thumb2. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_9-branch@231177 138bc75d-0d04-0410-961f-82ee72b054a4 diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c index 8ba6060..d9028a1 100644 --- b/gcc/config/arm/arm.c +++ a/gcc/config/arm/arm.c @@ -22624,19 +22624,12 @@ } /* We allow almost any value to be stored in the general registers. - Restrict doubleword quantities to even register pairs in ARM state - so that we can use ldrd. Do not allow very large Neon structure - opaque modes in general registers; they would use too many. */ + Restrict doubleword quantities to even register pairs so that we can + use ldrd. Do not allow very large Neon structure opaque modes in + general registers; they would use too many. */ if (regno <= LAST_ARM_REGNUM) - { - if (ARM_NUM_REGS (mode) > 4) - return FALSE; - - if (TARGET_THUMB2) - return TRUE; - - return !(TARGET_LDRD && GET_MODE_SIZE (mode) > 4 && (regno & 1) != 0); - } + return !(TARGET_LDRD && GET_MODE_SIZE (mode) > 4 && (regno & 1) != 0) + && ARM_NUM_REGS (mode) <= 4; if (regno == FRAME_POINTER_REGNUM || regno == ARG_POINTER_REGNUM) 05e8248d3a7abfdf3f307eac3898e8bc2e4515a'>root/tests/services.scm
AgeCommit message (Expand)Author
2023-06-06services: 'modify-services' preserves service ordering....Fixes <https://issues.guix.gnu.org/63921>. The regression was introduced in dbbc7e946131ba257728f1d05b96c4339b7ee88b, which changed the order of services. As a result, someone using 'modify-services' could find themselves with incorrect ordering of expressions in the "boot" script, whereby the cleanup expressions would come after (execl ".../shepherd"). This, in turn, would lead shepherd to error out at boot with EADDRINUSE on /var/run/shepherd/socket. * gnu/services.scm (%delete-service, %apply-clauses): Remove. (clause-alist): New macro. (apply-clauses): New procedure. (modify-services): Use it. Adjust docstring. * tests/services.scm ("modify-services: do nothing"): Remove 'sort' call. ("modify-services: delete service"): Likewise, and add 't4' service. ("modify-services: change value"): Remove 'sort' call and fix expected value. Ludovic Courtès
2023-06-02tests: Check for service existence in MODIFY-SERVICES...* tests/services.scm ("modify-services: delete non-existing service") ("modify-services: change value for non-existing service"): New tests. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Brian Cully
2023-06-02tests: Add tests for MODIFY-SERVICES procedure...* tests/services.scm ("modify-services: do nothing") ("modify-services: delete service") ("modify-services: change value"): New tests. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Brian Cully
2022-05-18services: Make <service-type> 'description' field mandatory....* gnu/services.scm (<service-type>)[description]: Remove default value. * tests/services.scm: Add 'description' field to each 'service-type' form. Ludovic Courtès
2022-04-10services: Test 'shepherd-service-upgrade' with transient services....This is a followup to eeb8ac43c8c0b0cc69422766070dbefc55f5c5c1. * tests/services.scm ("shepherd-service-upgrade: transient service"): New test. Ludovic Courtès
2022-04-10services: herd: Adjust to <live-service> changes....This is a followup to a2c759c8304c461d096ab763568e7f71546ff4e8. * guix/scripts/system/reconfigure.scm (running-services): Fill in the 'transient?' field of <live-service>. * tests/services.scm ("shepherd-service-upgrade: one unchanged, one upgraded, one new") ("shepherd-service-upgrade: service depended on is not unloaded") ("shepherd-service-upgrade: obsolete services that depend on each other"): Adjust calls to 'live-service'. Ludovic Courtès