Age | Commit message (Collapse) | Author | Files | Lines |
|
(cherry picked from commit 522a0de2101abd12b19a4d2ba5c09abbb7c5fc79)
|
|
(cherry picked from commit 1456b7ae6b72a4f2c446243acdde7c951268d4ab)
|
|
due to a mistake in my testing procedure, the changes in the previous
commit were not correctly tested and wrongly assumed to be valid. the
lwarx and stwcx. instructions do not accept general ppc memory address
expressions and thus the argument associated with the memory
constraint cannot be used directly.
instead, the memory constraint can be left as an argument that the asm
does not actually use, and the address can be provided in a separate
register constraint.
(cherry picked from commit bb3a3befeaa01531c273ef9130f3fbcaaf8a25e2)
|
|
the register constraint for the address to be accessed did not convey
that the asm can access the pointed-to object. as far as the compiler
could tell, the result of the asm was just a pure function of the
address and the values passed in, and thus the asm could be hoisted
out of loops or omitted entirely if the result was not used.
(cherry picked from commit 7fdae458bd421046a300a69dcb32953ac9450136)
|
|
this is needed for recently committed sigaction code
|
|
previous version did not compare at all; it was just a fancy atomic
write. untested. further atomic fixes may be needed.
|
|
|
|
|