Devang Patel
0a9f9759a3
Struct types are described using field types only.
...
llvm-svn: 74477
2009-06-29 23:46:50 +00:00
Daniel Dunbar
ae7ac01059
llvm-mc: Diagnose misuse (mix) of defined symbols and labels.
...
- For example, we diagnose errors on:
--
a:
a = 10
--
- For now we reject code like:
--
.long a
a = 10
--
which "as" accepts (on Darwin).
llvm-svn: 74476
2009-06-29 23:43:14 +00:00
Daniel Dunbar
abe6f35c31
Add SMLoc::isValid method.
...
- To support using SMLoc as a sentinel.
llvm-svn: 74474
2009-06-29 23:28:55 +00:00
Daniel Dunbar
f71a0cca84
Fix install of libCompilerDriver dynamic library to not copy on every build.
...
llvm-svn: 74473
2009-06-29 22:59:36 +00:00
Anders Carlsson
074a18a8fd
Improvements to decltype. We now don't crash anymore when the expr is an overloaded function decl.
...
llvm-svn: 74472
2009-06-29 22:58:55 +00:00
David Greene
371ca49bad
Remove commented code.
...
llvm-svn: 74471
2009-06-29 22:55:52 +00:00
David Greene
8adf1fdc80
Add a 256-bit register class and YMM registers.
...
llvm-svn: 74469
2009-06-29 22:50:51 +00:00
David Goodwin
76b37950ca
Add Thumb-2 support for TEQ amd TST.
...
llvm-svn: 74468
2009-06-29 22:49:42 +00:00
Daniel Dunbar
302ab13b1a
Don't define __KPRINTF_ATTRIBUTE__ unconditionally on OpenBSD.
...
llvm-svn: 74467
2009-06-29 22:45:37 +00:00
Douglas Gregor
e8925dbc1d
Improve code generation for function template specializations:
...
- Track implicit instantiations vs. the not-yet-supported explicit
specializations
- Give implicit instantiations of function templates (and member
functions of class templates) linkonce_odr linkage.
- Improve name mangling for function template specializations,
including the template arguments of the instantiation and the return
type of the function.
Note that our name-mangling is improved, but not correct: we still
don't mangle substitutions, although the manglings we produce can be
demangled.
llvm-svn: 74466
2009-06-29 22:39:32 +00:00
Fariborz Jahanian
2be8bf44cd
Diagnose multiple initialzation of data-member/base
...
in the ctor-initializer list. More to come.
llvm-svn: 74465
2009-06-29 22:33:26 +00:00
David Goodwin
911edef65b
Thumb-2 tests
...
llvm-svn: 74464
2009-06-29 22:25:22 +00:00
Daniel Dunbar
5992b4a211
llvm-mc: Recognize C++ style comments.
...
llvm-svn: 74463
2009-06-29 22:00:57 +00:00
Daniel Dunbar
6b22f9ca45
llvm-mc: Recognize C++ style comments.
...
llvm-svn: 74462
2009-06-29 21:58:22 +00:00
Anders Carlsson
d7a1bc4466
Remove some dead code
...
llvm-svn: 74460
2009-06-29 21:39:57 +00:00
Dan Gohman
9d203c636b
Use getSCEV instead of getUnknown to create a SCEV for a
...
Constant. This lets ConstantInts be handled as SCEVConstant instead
of SCEVUnknown, as getUnknown no longer has special-case code for
ConstantInt and friends. This usually doesn't affect the final
output, since the constants end up getting folded later, but it
does make intermediate expressions more obvious in many cases.
llvm-svn: 74459
2009-06-29 21:31:18 +00:00
Daniel Dunbar
231898baf5
Fix uninitialized variable warning.
...
llvm-svn: 74457
2009-06-29 21:14:21 +00:00
Daniel Dunbar
fdbbc52cfd
Don't build LLVMC when configured with --disable-pic (it needs requires shared
...
module support to build).
llvm-svn: 74456
2009-06-29 21:12:26 +00:00
Torok Edwin
896556eec7
Set wasRun to false here on Dan's suggestion.
...
llvm-svn: 74455
2009-06-29 21:05:10 +00:00
Douglas Gregor
8f5d4423ca
Keep track of function template specializations, to eliminate
...
redundant, implicit instantiations of function templates and provide a
place where we can hang function template specializations.
llvm-svn: 74454
2009-06-29 20:59:39 +00:00
Daniel Dunbar
10de9e6602
OpenBSD support.
...
- Patch by Jonathan Gray!
llvm-svn: 74453
2009-06-29 20:52:51 +00:00
Devang Patel
40d784180b
s/MainCU/ModuleCU/g
...
llvm-svn: 74452
2009-06-29 20:45:18 +00:00
Daniel Dunbar
0bd61cb9f0
Set some svn:ignore props
...
llvm-svn: 74451
2009-06-29 20:41:28 +00:00
Daniel Dunbar
84bfd7b184
MC: Improve expression parsing and implement evaluation of absolute expressions
...
(missed files).
llvm-svn: 74450
2009-06-29 20:40:36 +00:00
Devang Patel
8635345d8a
Multiple DW_TAG_compile_unit is not used, afaict, on any target.
...
Update dwarf writer to only emit one DW_TAG_compile_unit per .o file.
llvm-svn: 74449
2009-06-29 20:38:13 +00:00
Daniel Dunbar
7e8d6c7215
MC: Improve expression parsing and implement evaluation of absolute expressions.
...
llvm-svn: 74448
2009-06-29 20:37:27 +00:00
Dan Gohman
19d2417c90
Don't cache PHI exit values from exhaustive evaluations, because
...
an individual exhaustive evaluation reflects only the exit value
implied by an individual exit, which may differ from the actual
exit value of the loop if there are other exits. This fixes PR4477.
llvm-svn: 74447
2009-06-29 20:34:13 +00:00
Rafael Espindola
538064d6b1
FIX PR 4459.
...
Not sure I understand how the temp register gets used,
but this fixes a bug and introduces no regressions.
llvm-svn: 74446
2009-06-29 20:29:59 +00:00
David Greene
f71ee01c81
Add some tests of advanced TableGen list functionality.
...
llvm-svn: 74445
2009-06-29 20:07:17 +00:00
David Greene
efa19619c8
Implement !cast<string>.
...
llvm-svn: 74444
2009-06-29 20:05:29 +00:00
David Greene
fd42c8a567
Improve TableGen error reporting.
...
llvm-svn: 74443
2009-06-29 19:59:52 +00:00
Torok Edwin
6fb3e98eed
Initialize CurSection in constructor.
...
Not doing so causes some unittests to fail, because CurSection is uninitialized.
llvm-svn: 74442
2009-06-29 19:59:10 +00:00
Daniel Dunbar
7cbba368fb
Fix order of arguments to EXPECT_EQ
...
llvm-svn: 74441
2009-06-29 19:57:24 +00:00
Daniel Dunbar
a97615adf8
Rename MCValue::getCst to getConstant and add MCValue::isConstant.
...
llvm-svn: 74440
2009-06-29 19:51:00 +00:00
Andreas Bolka
6037bc9e60
Relax LDA memory instruction checks.
...
llvm-svn: 74439
2009-06-29 18:51:11 +00:00
Torok Edwin
24c7835d19
Call doInitialization(), releaseMemory(), and doFinalization() for on-the-fly passes as well.
...
Also don't call finalizers for LoopPass if initialization was not called.
Add a unittest that tests that these methods are called, in the proper
order, and the correct number of times.
llvm-svn: 74438
2009-06-29 18:49:09 +00:00
Dan Gohman
e00beaaee8
Simplify this code, and avoid using APInt(). This fixes
...
(otherwise harmless) uninitialized value warnings that
Duncan found with gcc-4.4.
llvm-svn: 74437
2009-06-29 18:25:52 +00:00
Owen Anderson
45c299ef65
Add a target-specific DAG combine on X86 to fold the common pattern of
...
fence-atomic-fence down to just the atomic op. This is possible thanks to
X86's relatively strong memory model, which guarantees that locked instructions
(which are used to implement atomics) are implicit fences.
llvm-svn: 74435
2009-06-29 18:04:45 +00:00
Argyrios Kyrtzidis
743e7db794
-Keep a reference to the ASTContext inside the TranslationUnitDecl.
...
-Introduce Decl::getASTContext() which returns the reference from the TranslationUnitDecl that it is contained in.
The general idea is that Decls can point to their own ASTContext so that it is no longer required to "manually" keep track and make sure that you pass the correct ASTContext to Decls' methods, e.g. methods like Decl::getAttrs should eventually not require a ASTContext parameter.
llvm-svn: 74434
2009-06-29 17:38:40 +00:00
Argyrios Kyrtzidis
3cfb28a68d
Remove redundant leftover code.
...
llvm-svn: 74433
2009-06-29 17:38:09 +00:00
Chris Lattner
e4edb8e818
Fix the FloatingLiteral API to take the isexact flag by value instead of
...
by pointer.
llvm-svn: 74432
2009-06-29 17:34:55 +00:00
Douglas Gregor
70d83e27a4
Move FunctionDecl::TemplateSpecializationInfo out into its own class,
...
FunctionTemplateSpecializationInfo, in DeclTemplate.h. No functionality change.
llvm-svn: 74431
2009-06-29 17:30:29 +00:00
Sebastian Redl
1257581438
Fix three MSVC 2008 warnings that completely clutter the build output.
...
llvm-svn: 74430
2009-06-29 17:12:06 +00:00
David Greene
46b56ffae3
Add processor descriptions for Istanbul and Shanghai.
...
llvm-svn: 74429
2009-06-29 16:54:06 +00:00
David Greene
a4b8998fbb
Fix a subtarget feature bug.
...
llvm-svn: 74428
2009-06-29 16:51:01 +00:00
David Greene
f92ba97cda
Add more vector ValueTypes for AVX and other extended vector instruction
...
sets.
llvm-svn: 74427
2009-06-29 16:47:10 +00:00
Douglas Gregor
e081d90233
Fix CMake checks for pthread_getspecific and pthread_rwlock_init, from Xerxes Ranby
...
llvm-svn: 74426
2009-06-29 16:25:22 +00:00
Steve Naroff
8d9cc9ebc1
Remove ASTContext::getObjCQualifiedIdType().
...
Convert clients to use ASTContext::getObjCObjectPointerType().
llvm-svn: 74424
2009-06-29 16:22:52 +00:00
David Goodwin
dbf11ba800
Rename ARMcmpNZ to ARMcmpZ and use it to represent comparisons that set only the Z flag (i.e. eq and ne). Make ARMcmpZ commutative.
...
llvm-svn: 74423
2009-06-29 15:33:01 +00:00
Duncan Sands
14814d4477
Add triple for OpenBSD.
...
llvm-svn: 74422
2009-06-29 13:36:13 +00:00