-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 08/16/11 15:35, grabekm90 wrote:

> How to resolve a problem with pointers (especially arrays)? For
> example, we have a GIMPLE function:
> 
> set_a (int * a) { int * D.2701; D.2701 = a + 40; *D.2701 = 7; }
> 
> This is equivalent code in C:
> 
> void set_a(int * a) { a[10] = 107; }
> 
> GIMPLE tries to avoid operations on the left side of the assign sign.
> There is a problem because I want to identify local variable (D.2701)
> with function parameter (a). In this case "a" is output parameter. I
> could follow a behavior of parameters in my plugin, but I suppose
> that GIMPLE makes accessible better solution, doesn't it?
Adding/subtracting from a pointer should result in another pointer to a
different part of the same object.  So anytime I saw
<whatever> = <pointer> +- index

I'd record that <whatever> was a derived pointer.

jeff
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJOSuPvAAoJEBRtltQi2kC7p6AH/3x6EXhLr4os3FjFklvNdJk6
FsGYnl9l3ZxRzYv5TyS6Pe2hzZaRPzZyF0a6r6/pZ9KqxlBA7XQwIAxjBnW37+DK
LypIeCz7IeQDqPnB2OV9e271Q+b6EWPhSg/csAAeGqKtmixjwNC2Zjkgjbf5Anmn
WtSyo12A2b16f24I/bHw36frupcBF7adMBK5CyQVthoMkbVsporvG9Yz4NX/vmF+
2UPGw3wap9SIsMEs9bG/OA13Q2WsQS7EJw2n5GH4gdlEwMmd6e8WsuQ0802SkHdX
aVgwIJ0xQbk2RuVnRb8244u+6AOuVT4yVVvHJ5QGfON/UoLFUKa1SPUXRSRLKaM=
=HggP
-----END PGP SIGNATURE-----

Reply via email to