Bruno Cardoso Lopes
a01ede2f11
Mips ISelLowering cleanup : Removed old LowerCALL and FORMAL_ARGS helpers, they
...
aren't used anyway, they also used to broke compiling when fastcc was specified for a
function, but not anymore.
llvm-svn: 54316
2008-08-04 07:12:52 +00:00
Bruno Cardoso Lopes
2ca70df58b
Handle i32->f32 bitconvert results.
...
llvm-svn: 54315
2008-08-04 06:44:31 +00:00
Andrew Lenharth
77e3e86e70
Add atomic sub for other sizes
...
llvm-svn: 54314
2008-08-03 20:17:34 +00:00
Chris Lattner
796e9be3b1
Emit saveri with the correct operand order, patch by Richard Pennington!
...
llvm-svn: 54313
2008-08-03 18:16:14 +00:00
Bruno Cardoso Lopes
3e667cfe21
Fix PR2615
...
llvm-svn: 54312
2008-08-03 15:37:43 +00:00
Ted Kremenek
dea68f4cbe
Updated latest checker build.
...
llvm-svn: 54276
2008-08-03 03:14:03 +00:00
Bruno Cardoso Lopes
3d4bdcc1a6
Improved asm inline for hi,lo results
...
Added hi,lo registers to be used,def implicitly. This provides better handle of
instructions which use hi/lo.
Fixes a small BranchAnalysis bug
llvm-svn: 54274
2008-08-02 19:42:36 +00:00
Bruno Cardoso Lopes
3397298b65
Apply the same pattern used in 'and' lowering for 'or'
...
llvm-svn: 54273
2008-08-02 19:37:33 +00:00
Ted Kremenek
9512c122fa
Change 'dead store (++/--)' to 'dead increment'
...
llvm-svn: 54268
2008-08-02 18:19:48 +00:00
Duncan Sands
c1e48b582d
Fix comment typos.
...
llvm-svn: 54266
2008-08-01 12:23:49 +00:00
Argyrios Kyrtzidis
25d05e88a5
Wherever a type is used/returned from the Action module, use TypeTy instead of DeclTy or void.
...
No functionality change.
llvm-svn: 54265
2008-08-01 10:35:27 +00:00
Argyrios Kyrtzidis
85324837ce
Make the default constructor of IdentifierResolver::iterator public.
...
llvm-svn: 54264
2008-08-01 10:20:48 +00:00
Bill Wendling
a113655c79
Removed unused parameters.
...
llvm-svn: 54262
2008-08-01 05:50:13 +00:00
Daniel Dunbar
f4693e289a
Add more output to clang -parse-print-callbacks
...
- Just added prints for all the action functions. Ideally this would
be extended to print all the information for the actions.
llvm-svn: 54259
2008-08-01 00:41:12 +00:00
Daniel Dunbar
74aa7e1eae
Support constructor and destructor attributes in CodeGen
...
- There is an miscompilation issue remaining due to a poor
interaction between the delayed emission of static functions and
the emission of constructors, but that already existed prior to
this change.
llvm-svn: 54258
2008-08-01 00:01:51 +00:00
Daniel Dunbar
032db47f0f
Support __attribute__(({con,de}structor)) in Parse & Sema
...
- Including possible priority argument
- In other news, the attribute parsing code really needs a cleanup
llvm-svn: 54257
2008-07-31 22:40:48 +00:00
Ted Kremenek
a7045d663d
Enhanced path-sensitive return-of-stack-address check to print out the name of the variable whose address was returned.
...
llvm-svn: 54253
2008-07-31 20:31:27 +00:00
Dale Johannesen
962178e77e
Make sse2 explicit, for non-x86 hosts.
...
llvm-svn: 54251
2008-07-31 20:16:33 +00:00
Bruno Cardoso Lopes
e4798c83d0
Expand fcopysign
...
llvm-svn: 54250
2008-07-31 18:50:54 +00:00
Bruno Cardoso Lopes
23471047be
Handle more SELECT corner cases considering legalize types, probabily wont work with
...
the default legalizer.
llvm-svn: 54249
2008-07-31 18:31:28 +00:00
Dale Johannesen
c31eb205c1
Add a flag to disable jump table generation (all
...
switches use the binary search algorithm) for
environments that don't support it. PPC64 JIT
is such an environment; turn the flag on for that.
llvm-svn: 54248
2008-07-31 18:13:12 +00:00
Ted Kremenek
e5b40a9112
Remove getCodeBody() from Decl, and hoist getBody() into Decl as a virtual function.
...
llvm-svn: 54247
2008-07-31 17:32:12 +00:00
Chris Lattner
b4ec8de163
improve order
...
llvm-svn: 54244
2008-07-31 06:48:13 +00:00
Chris Lattner
330f0f2567
Fix a regression I introduced in r54107:
...
http://llvm.org/viewvc/llvm-project?view=rev&revision=54107
llvm-svn: 54242
2008-07-31 04:58:58 +00:00
Mon P Wang
b160a0d78d
Updated to match new atomic names (to enable overloading for pointers to
...
different address spaces) for llvm r54195.
llvm-svn: 54241
2008-07-31 03:28:23 +00:00
Dan Gohman
345d63ccf2
Improve dagcombining for sext-loads and sext-in-reg nodes.
...
llvm-svn: 54239
2008-07-31 00:50:31 +00:00
Daniel Dunbar
b39b1cd7c3
Fix implicit initialization of structures.
...
<rdar://problem/6113085>
llvm-svn: 54237
2008-07-30 21:00:24 +00:00
Bruno Cardoso Lopes
2d7ddea240
Added pattern for floating point zero immediate (avoiding a constant pool
...
access).
Added pattern to match bitconvert node.
Fixed MTC1 asm string bug.
llvm-svn: 54229
2008-07-30 19:00:31 +00:00
Dan Gohman
88e0df0c91
Move SelectionDAG::viewGraph() out of line; as an inline function
...
it isn't always visible to gdb.
llvm-svn: 54228
2008-07-30 18:48:53 +00:00
Dan Gohman
2fe4352691
Don't look for leaf values to store when lowering stores of
...
empty structs. This fixes PR2612.
llvm-svn: 54226
2008-07-30 18:36:51 +00:00
Owen Anderson
c818c01539
Use existing LiveInterval methods to simplify live interval merging. Thanks to Evan for pointing these out.
...
llvm-svn: 54225
2008-07-30 18:27:35 +00:00
Dan Gohman
f8cc0aa87d
I missed this file in r54223. movzbl is now used instead
...
of movzbw here.
llvm-svn: 54224
2008-07-30 18:23:34 +00:00
Dan Gohman
86b06335aa
Reapply r54147 with a constraint to only use the 8-bit
...
subreg form on x86-64, to avoid the problem with x86-32
having GPRs that don't have 8-bit subregs.
Also, change several 16-bit instructions to use
equivalent 32-bit instructions. These have a smaller
encoding and avoid partial-register updates.
llvm-svn: 54223
2008-07-30 18:09:17 +00:00
Ted Kremenek
6a77d42a4d
Use stable sort.
...
llvm-svn: 54222
2008-07-30 18:03:31 +00:00
Ted Kremenek
e8fce56cd1
"Escape" bug names with quotes for selecting/deselecting from the bug table.
...
llvm-svn: 54220
2008-07-30 17:58:08 +00:00
Ted Kremenek
a8b8ce499a
Add range highlighting for path-sensitive return-of-stack-address check.
...
llvm-svn: 54219
2008-07-30 17:49:12 +00:00
Owen Anderson
7b5f535590
Value numbers whose def index is a special sentinel value should not be remapped.
...
llvm-svn: 54218
2008-07-30 17:42:47 +00:00
Bruno Cardoso Lopes
a950422221
Fixed bug in global address lowering for functions and in Brcond lowering
...
llvm-svn: 54215
2008-07-30 17:06:13 +00:00
Bruno Cardoso Lopes
57e17f0e14
Removed small section flag for mips, the assembler doesnt support this flag
...
llvm-svn: 54214
2008-07-30 17:04:04 +00:00
Bruno Cardoso Lopes
f714e25f7e
Added new features to represent specific instructions groups
...
llvm-svn: 54213
2008-07-30 17:01:06 +00:00
Bruno Cardoso Lopes
89e2b163fb
Instruction definition cleanup
...
llvm-svn: 54212
2008-07-30 16:58:59 +00:00
Daniel Dunbar
e49df9b58f
Change CodeGenModule GlobalDeclMap to directly reference globals
...
instead of mapping the decl to a bitcast of the global to the correct
type.
- GetAddrOf{Function,GlobalVar} introduce the bitcast on every use now.
- This solves a problem where a dangling pointer could be introduced
by the RAUW done when replacing a forward or tentative
definition. See testcase for more details.
- Fixes <rdar://problem/6108358>
llvm-svn: 54211
2008-07-30 16:32:24 +00:00
Matthijs Kooijman
be31571ca5
Document BasicBlock::Create.
...
llvm-svn: 54210
2008-07-30 12:53:14 +00:00
Matthijs Kooijman
ca4ffaabcd
Not that using stream headers other than iostream is allowed.
...
llvm-svn: 54209
2008-07-30 12:14:10 +00:00
Mon P Wang
2c839d4b1e
Added support for overloading intrinsics (atomics) based on pointers
...
to different address spaces. This alters the naming scheme for those
intrinsics, e.g., atomic.load.add.i32 => atomic.load.add.i32.p0i32
llvm-svn: 54195
2008-07-30 04:36:53 +00:00
Eli Friedman
4736916aa6
Another SCEV issue from PR2607; essentially the same issue, but this
...
time applying to the implicit comparison in smin expressions. The
correct way to transform an inequality into the opposite
inequality, either signed or unsigned, is with a not expression.
I looked through the SCEV code, and I don't think there are any more
occurrences of this issue.
llvm-svn: 54194
2008-07-30 04:36:32 +00:00
Owen Anderson
e9a0bae238
More fixes for corner cases when remapping live range indices.
...
llvm-svn: 54186
2008-07-30 00:22:56 +00:00
Owen Anderson
1aebe49ae7
When merging live intervals, we also need to merge in any live ranges that are inputs to two-address instructions
...
that themselves define a range we already care about.
llvm-svn: 54185
2008-07-30 00:21:16 +00:00
Eli Friedman
5ae90441c4
Fix for PR2607: SCEV miscomputing the loop count for loops with an
...
SGT exit condition. Essentially, the correct way to flip an inequality
in 2's complement is the not operator, not the negation operator.
That said, the difference only affects cases involving INT_MIN.
Also, enhance the pre-test search logic to be a bit smarter about
inequalities flipped with a not operator, so it can eliminate the smax
from the iteration count for simple loops.
llvm-svn: 54184
2008-07-30 00:04:08 +00:00
Ted Kremenek
8cf5045012
Fix regression in range highlighting in HTML output.
...
llvm-svn: 54181
2008-07-29 23:35:38 +00:00