[Bug c/28729] Assignment to data used in __asm() get optimised away.

2006-08-14 Thread pinskia at gcc dot gnu dot org
--- Comment #3 from pinskia at gcc dot gnu dot org 2006-08-14 21:04 --- (In reply to comment #2) > So how can you say that the asm uses the contents of a buffer area? Didn't you see the first part of my comment which shows you how to fix the asm? __asm volatile("lidt (%0)" : : "r" (p),

[Bug c/28729] Assignment to data used in __asm() get optimised away.

2006-08-14 Thread dsl at netbsd dot org
--- Comment #2 from dsl at netbsd dot org 2006-08-14 21:03 --- So how can you say that the asm uses the contents of a buffer area? -- dsl at netbsd dot org changed: What|Removed |Added ---

[Bug c/28729] Assignment to data used in __asm() get optimised away.

2006-08-14 Thread pinskia at gcc dot gnu dot org
--- Comment #1 from pinskia at gcc dot gnu dot org 2006-08-14 20:44 --- Try: __asm volatile("lidt (%0)" : : "r" (p), "m"(*p)); Other than that, this is invalid as the asm just says it take the value of p and nothing about the contences of p. -- pinskia at gcc dot gnu dot org changed