This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

bug: trashed register.


 Hi,

	I've searched the list archives and found a mentioning for a very similar
bug which got fixed, http://gcc.gnu.org/ml/gcc-bugs/2000-01/msg00569.html
but I am not really sure it's the same bug, as I don't really understand
what triggers it. which version of gcc would you recommend me to try?

	I'm using gcc 2.95.2-5 from the 1.1.6 Cygwin release. but I've also tried
2.95.2-7 from the 1.1.8 release with exactly the same results.

	When compiling with optimization level higher than zero a local function
variable gets overwritten by subsequent calles to other functions within and
not restored, pseudo code example:

	func1(void *param1, int param2) {
		internal_func(param1);

		<- at this point, param1 is not restored and is filled with values
			from its internal state inside internal_func().

	}

	The problem is very much reproduceable, the code works fine
at optimization level zero and breaks at level one or higher.

	 bye,
		Marc.

--
marc @ corky.net

fingerprint = D1F0 5689 967F B87A 98EB  C64D 256A D6BF 80DE 6D3C

          /"\
          \ /     ASCII Ribbon Campaign
           X      Against HTML Mail
          / \

----- End forwarded message -----

 bye,
	Marc.

--
marc @ corky.net

fingerprint = D1F0 5689 967F B87A 98EB  C64D 256A D6BF 80DE 6D3C

          /"\
          \ /     ASCII Ribbon Campaign
           X      Against HTML Mail
          / \


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]