Last update: Thu Apr 12 03:37:15 MDT 2012
Top |
Symbols |
Numbers |
Math |
A |
B |
C |
D |
E |
F |
G |
H |
I |
J |
K |
L |
M |
N |
O |
P |
Q |
R |
S |
T |
U |
V |
W |
X |
Y |
Z
BibTeX entry
@Article{Ruf:1995:CAA,
author = "Erik Ruf",
title = "Context-insensitive alias analysis reconsidered",
journal = j-SIGPLAN,
volume = "30",
number = "6",
pages = "13--22",
month = jun,
year = "1995",
CODEN = "SINODQ",
ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)",
ISSN-L = "0362-1340",
bibdate = "Thu May 13 12:37:27 MDT 1999",
bibsource = "http://www.acm.org/pubs/contents/proceedings/pldi/207110/index.html",
URL = "http://www.acm.org:80/pubs/citations/proceedings/pldi/207110/p13-ruf/",
abstract = "Recent work on alias analysis in the presence of
pointers has concentrated on {\em context-sensitive\/}
interprocedural analyses, which treat multiple calls to
a single procedure independently rather than
constructing a single approximation to a procedure's
effect on all of its callers. While context-sensitive
modeling offers the potential for greater precision by
considering only realizable call-return paths, its
empirical benefits have yet to be measured. This paper
compares the precision of a simple, efficient, {\em
context-insensitive\/} points-to analysis for the C
programming language with that of a maximally
context-sensitive version of the same analysis. We
demonstrate that, for a number of pointer-intensive
benchmark programs, context-insensitivity exerts little
to no precision penalty. We also describe techniques
for using the output of context-insensitive analysis to
improve the efficiency of context-sensitive analysis
without affecting precision.",
acknowledgement = ack-nhfb,
affiliation = "Microsoft Corp., Redmond, WA, USA",
annote = "Published as part of the Proceedings of PLDI'95.",
classification = "C6110 (Systems analysis and programming); C6150C
(Compilers, interpreters and other processors); C6150N
(Distributed systems software)",
keywords = "algorithms; C programming language; Call-return paths;
Compilers; Context-insensitive alias analysis;
Context-insensitive analysis; Context-insensitivity;
Context-sensitive analysis; Context-sensitive
interprocedural analyses; Context-sensitive modeling;
languages; Multiple procedure calls; Pointer-intensive
benchmark programs; Pointers; Precision penalty",
subject = "{\bf D.3.2} Software, PROGRAMMING LANGUAGES, Language
Classifications, C. {\bf D.3.3} Software, PROGRAMMING
LANGUAGES, Language Constructs and Features, Data types
and structures. {\bf D.3.4} Software, PROGRAMMING
LANGUAGES, Processors, Optimization. {\bf D.3.4}
Software, PROGRAMMING LANGUAGES, Processors,
Compilers.",
thesaurus = "C language; Data flow analysis; Program compilers;
Remote procedure calls; Software performance
evaluation",
}
Related entries
- affecting,
27(7)32,
27(9)248
- alias,
27(7)235,
27(7)249,
28(6)56,
29(6)230,
29(6)242,
29(6)242-1,
30(6)1,
30(6)13-1,
33(5)106,
33(7)27,
33(10)48
- analyse,
26(6)80,
26(6)80-1,
27(7)106,
27(7)224,
28(6)68,
28(6)78-1,
28(6)268,
28(7)33,
29(6)1,
29(6)147,
29(6)242,
29(6)242-1,
29(6)266,
29(11)286,
30(6)196,
30(11)20-1,
30(11)70,
32(8)38,
33(7)43
- approximation,
25(6)92,
25(6)322,
27(7)140,
27(7)212,
28(6)56,
29(6)230,
34(11)44
- benchmark,
6(4)159,
25(12)54,
25(12)85,
26(4)28,
26(4)290,
27(7)44,
27(7)94,
27(7)106,
28(6)1,
28(6)258,
28(6)268,
28(7)102,
28(7)218,
28(7)249,
29(6)36,
29(6)49,
29(6)85,
29(6)171,
29(10)341,
29(11)86,
29(11)145,
29(11)196,
29(11)208,
29(11)232,
29(11)252,
29(11)286,
30(6)1,
30(6)139,
30(6)218,
30(6)270,
30(8)29,
30(8)144,
31(10)83,
32(5)109,
32(5)122,
32(5)183,
32(5)235,
32(5)346-1,
33(11)35,
33(11)58,
33(11)71,
33(11)159,
33(11)170,
33(11)218,
33(11)252,
33(11)262,
33(11)283,
34(3)68,
34(7)96
- benefit,
25(6)66,
25(6)78,
26(2)35,
27(7)106,
27(7)300,
27(7)322,
28(6)177,
29(6)49,
29(11)2,
29(11)12,
29(11)110,
29(11)219,
29(11)308,
30(3)62,
30(4)13,
30(6)93,
30(6)103,
30(6)151,
30(6)246,
30(6)270,
30(8)189,
30(8)217,
32(1)77,
33(10)134
- C6110,
25(6)102,
26(1)14,
26(6)145,
26(6)219,
27(1)95,
27(6)54,
27(12)61,
28(6)1,
28(6)13,
28(6)26,
28(6)36,
28(6)46,
28(6)56,
28(6)78-1,
28(6)90,
28(6)147,
28(6)156,
28(6)197,
28(6)207-1,
28(6)227,
28(6)237,
28(6)268,
28(6)300,
29(1)20,
29(1)53,
29(2)13,
29(2)33,
29(2)44,
29(3)18,
29(3)23,
29(3)28,
29(3)33,
29(4)15,
29(4)23,
29(4)49,
29(6)1,
29(6)13,
29(6)24,
29(6)49,
29(6)61,
29(6)85,
29(6)159,
29(6)206,
29(6)290,
29(6)313,
29(9)22,
29(9)29,
29(9)44,
29(9)51,
29(9)72,
29(9)81,
29(9)91,
29(9)125,
29(10)259,
29(10)388,
30(3)1,
30(3)13,
30(3)62,
30(3)94,
30(4)13,
30(6)23,
30(6)32,
30(6)47,
30(6)233,
30(6)246,
30(8)92,
30(11)41,
30(11)108,
30(11)117,
30(11)125
- C6150N,
28(7)23,
28(7)64,
28(7)73,
29(5)41-1,
29(6)36,
29(6)107,
29(8)119,
29(10)113,
29(10)301,
29(11)2,
29(11)12,
29(11)25,
29(11)38,
29(11)51,
29(11)61,
29(11)183,
29(11)232,
29(11)286,
29(11)319,
29(11)328,
29(12)48,
29(12)66,
30(3)83,
30(3)103,
30(3)111,
30(6)23,
30(6)67,
30(6)139,
30(6)151,
30(6)163-1,
30(8)1,
30(8)11,
30(8)29,
30(8)39,
30(8)68,
30(8)102,
30(8)134,
30(8)156,
30(8)179,
30(8)189,
30(8)199,
30(8)207,
30(8)217,
30(11)1,
30(11)50,
30(11)60,
30(11)70,
30(11)108,
30(11)134
- compare,
25(6)234,
25(12)54,
27(7)188-1,
28(7)83,
28(8)57,
29(6)85,
29(11)12,
29(11)132-1,
30(6)79-1,
30(6)116,
30(8)1,
31(9)150,
33(7)51
- concentrated,
29(6)206
- constructing,
27(7)82,
27(7)341,
29(6)266,
30(6)47
- context-insensitive,
30(6)13-1
- context-sensitive,
29(6)242,
29(6)242-1,
30(6)1,
30(6)1-1
- demonstrate,
25(10)237,
25(12)85,
27(7)68,
27(7)152,
27(7)200,
27(7)249,
27(9)285,
28(6)217,
28(7)44,
28(7)64,
28(7)112,
28(7)208,
28(7)239,
29(6)85,
29(6)218,
29(11)2,
29(11)25,
29(11)76-1,
29(11)110,
29(11)145,
29(11)252,
30(3)50,
30(3)71,
30(6)1,
30(6)196,
30(8)29,
30(8)102,
30(8)134,
30(11)70,
33(7)19,
33(7)51
- effect,
26(4)28,
26(4)75,
26(4)290,
27(3)71,
27(7)1,
27(7)32,
27(7)224,
28(3)361,
28(6)13,
28(6)56,
28(6)237,
29(6)1,
29(6)49,
29(6)107,
29(6)147,
29(6)349,
29(6)349-1,
29(11)12,
29(11)328,
30(6)1,
30(6)93,
30(6)130,
30(6)233,
30(8)199,
33(7)19,
34(1)51,
34(1)63
- efficiency,
25(4)59,
25(6)85-1,
25(6)209,
27(7)55,
27(7)128,
27(7)200,
27(7)224,
28(1)48,
28(3)349,
28(3)363,
28(6)100,
28(6)177,
28(7)83,
29(9)105,
29(10)129,
29(11)286,
30(3)94,
30(6)1,
30(8)102,
30(8)207,
33(5)174
- empirical,
25(3)1,
25(6)102,
26(4)28,
26(11)184,
27(3)54,
27(12)71,
28(6)258,
29(2)44,
29(6)242,
29(6)242-1,
30(6)1,
33(7)11,
33(7)83,
33(11)35,
33(11)272
- greater,
29(4)49,
29(11)2,
29(11)328
- improve,
25(6)53,
25(6)337,
26(6)145,
26(6)177,
26(6)177-1,
27(7)106,
27(7)116,
27(7)162,
27(7)188-1,
27(7)249,
27(9)223,
28(3)201,
28(6)100,
28(6)187,
28(6)268,
28(6)300,
29(6)36,
29(6)49,
29(6)97,
29(6)159,
29(6)206,
29(6)257,
29(6)257-1,
29(11)171,
29(11)208,
29(11)219,
29(11)232,
29(11)242,
29(11)252,
30(6)56,
30(6)93,
30(6)116,
30(6)151,
30(6)174,
30(6)186,
30(6)196,
30(6)205,
30(6)279,
30(8)29,
30(8)80-1,
30(8)166,
30(8)189,
30(8)199,
33(5)97,
33(7)51,
34(5)215
- independently,
27(7)152,
28(7)218,
29(6)36,
30(11)50
- insensitive, Context-,
30(6)13-1
- interprocedural,
25(6)28,
27(7)235,
28(5)3,
28(6)56,
28(6)90,
28(7)33,
29(4)41,
29(6)49,
29(6)230,
29(6)242,
29(6)242-1,
30(6)23,
30(6)23-1,
30(6)67,
30(6)258,
32(5)122,
32(5)146,
34(4)70,
34(8)37
- little,
25(6)78,
26(4)28,
27(9)262,
28(6)177,
28(6)300,
28(7)64,
28(7)149,
29(6)186,
29(6)230,
29(11)297,
30(3)111
- measured,
27(7)44,
28(6)258,
29(6)186,
29(11)61,
30(4)13,
30(6)279,
30(8)166,
32(8)292
- modeling,
25(3)11,
26(8)27,
27(7)200,
27(10)359,
28(6)100,
28(10)305,
29(9)81,
29(10)272,
29(11)122,
29(11)132-1,
30(8)80,
30(8)80-1,
31(9)138,
31(11)49,
32(7)276,
32(10)77,
32(10)108,
34(10)57,
34(12)47,
34(12)67
- offer,
25(6)9,
25(6)174,
27(7)1,
27(12)28,
28(7)33,
29(11)12,
29(11)76-1,
30(6)205,
31(5)108,
33(7)1,
33(11)252
- only,
25(6)85-1,
25(6)234,
25(6)283,
27(7)22,
27(7)32,
27(7)82,
27(7)212,
27(7)322,
28(3)69,
28(6)147,
28(6)156,
28(6)197,
28(7)13,
28(7)44,
28(7)83,
28(7)229,
28(12)169,
29(6)1,
29(6)36,
29(6)49,
29(6)147,
29(6)196,
29(6)278,
29(6)302,
29(8)1,
29(11)12,
29(11)171,
29(11)252,
29(11)274,
29(11)308,
29(11)319,
29(11)328,
30(3)23,
30(3)62,
30(6)23,
30(6)47,
30(6)93,
30(6)139,
30(6)246,
30(8)92,
30(8)112,
30(8)179,
30(11)99,
30(11)125,
33(3)65,
33(7)59,
34(9)8,
34(9)8-1,
34(9)8-2,
34(11)1,
34(11)83
- output,
25(6)92,
25(6)112,
27(7)200,
28(6)26,
28(6)100,
29(1)37,
29(8)59,
29(9)91,
29(12)58,
30(2)25,
30(3)35,
30(6)32,
31(5)108
- path,
25(9)7,
26(1)47,
27(7)249,
29(2)19,
29(6)1,
29(6)147,
29(6)230,
29(10)301,
29(11)232,
30(3)50,
30(6)47,
30(6)56,
30(6)186,
30(6)246,
30(8)207,
30(11)88,
31(9)268,
33(5)72,
33(11)170,
34(2)21,
34(2)21-1,
34(5)259
- penalty,
26(4)15,
29(11)319,
30(3)111,
30(8)189
- PLDI'95.,
30(6)1,
30(6)23,
30(6)32,
30(6)47,
30(6)56,
30(6)67,
30(6)79-1,
30(6)93,
30(6)103,
30(6)116,
30(6)130,
30(6)139,
30(6)151,
30(6)163-1,
30(6)174,
30(6)186,
30(6)196,
30(6)205,
30(6)218,
30(6)233,
30(6)246,
30(6)258,
30(6)270,
30(6)279,
30(6)291,
30(6)301,
30(6)315
- points-to,
29(6)242,
29(6)242-1,
30(3)62
- potential,
25(6)102,
28(3)69,
28(6)46,
28(6)207-1,
29(6)302,
29(11)2,
29(11)219,
33(7)27,
33(7)51,
33(7)83
- precision,
25(6)16,
25(6)92,
25(6)102,
27(5)z,
27(7)235,
29(6)73,
29(6)230,
29(10)324,
30(6)93,
30(8)144,
30(11)41,
33(7)51
- presence,
25(6)66,
27(7)235,
27(7)273,
27(7)283,
28(7)64,
29(6)135,
29(6)218,
29(6)242,
29(6)242-1,
29(11)183,
30(3)62,
30(6)139,
30(8)58,
30(10)200,
30(11)88,
31(5)99
- rather,
25(6)223,
25(6)234,
25(6)272,
25(6)296,
27(9)223,
27(9)285,
28(3)271,
28(3)361,
29(6)135,
29(6)349,
29(6)349-1,
29(8)119,
29(11)86,
29(11)110,
30(3)111,
30(6)151,
30(6)174,
30(11)20-1,
30(11)88,
33(7)19
- recent,
25(4)73,
25(6)9,
25(6)85-1,
26(1)14,
27(5)z,
29(11)219,
29(11)232,
30(3)62,
30(8)134,
30(11)20-1,
30(11)125,
34(2)32-1
- reconsidered,
29(10)153,
30(5)21,
30(6)13-1
- Ruf, Erik,
26(9)321,
30(3)50,
30(6)13-1,
31(5)215
- same,
25(4)51,
25(6)85-1,
25(6)165,
27(7)1,
27(7)32,
27(7)44,
27(7)82,
27(7)235,
28(3)69,
28(3)367,
28(6)126,
28(6)237,
28(6)268,
28(7)208,
28(7)218,
28(7)239,
29(6)36,
29(6)196,
29(8)1,
29(11)25,
29(11)61,
29(11)171,
29(11)286,
29(11)297,
30(3)35,
30(6)1,
30(6)205,
30(8)68,
30(8)102,
30(8)179,
30(8)199,
31(5)108
- sensitive, Context-,
29(6)242-1,
30(6)1
- sensitive, context-,
29(6)242,
29(6)242-1,
30(6)1,
30(6)1-1
- single,
25(6)28,
25(6)272,
27(7)162,
27(7)188-1,
27(9)175,
27(9)213,
28(3)177,
28(3)299,
28(6)36,
28(6)78-1,
28(6)126,
28(7)13,
28(7)44,
28(7)239,
29(6)24,
29(6)97,
29(6)107,
29(6)171,
29(6)186,
29(6)196,
29(7)51,
29(8)1,
29(11)38,
29(11)98,
29(11)319,
30(3)13,
30(3)50,
30(3)62,
30(3)119,
30(6)1,
30(6)47,
30(6)67,
30(6)186,
30(8)48,
30(11)60,
33(5)97,
34(5)204
- to, points-,
29(6)242,
29(6)242-1,
30(3)62
- treat,
25(6)1,
28(6)197,
28(6)237,
28(8)90,
29(6)61,
30(6)246
- version,
25(6)234,
25(6)257,
25(6)337,
26(8)121,
26(11)230,
27(2)88,
27(5)z,
27(7)1,
27(7)32,
27(7)44,
27(7)188-1,
27(8)99,
27(12)57,
28(2)21,
28(3)37,
28(3)53,
28(3)299,
28(3)367,
28(7)198,
28(7)218,
29(6)1,
29(6)36,
29(6)266,
29(8)119,
29(9)44,
29(11)61,
29(11)196,
29(11)252,
30(3)119,
30(6)93,
30(6)315,
33(7)19,
33(7)51,
33(7)83
- while,
25(4)51,
25(6)92,
25(6)174,
26(4)290,
27(7)1,
27(7)162,
27(7)273,
27(9)248,
28(3)361,
28(6)90,
28(6)177,
28(7)54-1,
29(6)36,
29(6)97,
29(6)186,
29(6)349,
29(6)349-1,
29(8)119,
29(11)25,
29(11)38,
29(11)171,
29(11)308,
30(3)83,
30(3)111,
30(6)23,
30(6)93,
30(6)130,
30(6)205,
30(6)258,
30(8)92,
30(11)1,
30(11)117,
30(11)125,
32(10)158,
32(10)158-1,
33(7)59
- work,
25(6)16,
25(6)40,
25(6)85-1,
25(6)174,
25(6)322,
26(12)46,
27(7)22,
27(7)200,
27(7)311,
27(7)322,
28(3)69,
28(3)209,
28(3)271,
28(6)147,
28(6)207-1,
28(8)90,
29(6)24,
29(6)36,
29(6)49,
29(6)159,
29(6)186,
29(6)206,
29(6)218,
29(6)278,
29(6)302,
29(8)59,
29(8)111,
29(10)129,
29(11)38,
29(11)86,
29(11)232,
29(11)308,
30(3)103,
30(6)56,
30(6)116,
30(6)196,
30(6)205,
30(6)279,
30(6)301,
30(8)48,
30(8)68,
30(8)207,
30(11)70,
33(7)59,
34(9)8-1
- yet,
28(6)156,
28(6)177,
28(6)300,
29(6)186,
29(11)252,
30(3)71,
30(3)111,
30(8)217,
32(10)345-3,
33(6)24,
33(6)24,
33(7)19,
33(7)27,
34(1)117