1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-26 12:43:36 +01:00
Commit Graph

23941 Commits

Author SHA1 Message Date
Chris Lattner
fc546e1780 Codegen shufflevector as VVECTOR_SHUFFLE
llvm-svn: 27529
2006-04-08 04:15:24 +00:00
Chris Lattner
12c1bd4cbc add a sanity check: LegalizeOp should return a value that is the same type
as its input.

llvm-svn: 27528
2006-04-08 04:13:17 +00:00
Chris Lattner
92c219136f use isValidOperands instead of duplicating checks
llvm-svn: 27527
2006-04-08 04:09:19 +00:00
Chris Lattner
254a66e29a Regenerate
llvm-svn: 27526
2006-04-08 04:09:02 +00:00
Chris Lattner
a637f981d7 Use isValidOperands instead of duplicating or eliding checks.
llvm-svn: 27525
2006-04-08 04:08:32 +00:00
Chris Lattner
73fc98fdeb Use the isValidOperands helper instead of duplicating checking code
llvm-svn: 27524
2006-04-08 04:07:52 +00:00
Chris Lattner
6610c8ac0c Add methods to check insertelement/extractelement instructions for validity,
check validity when instructions are created.

llvm-svn: 27523
2006-04-08 04:05:48 +00:00
Chris Lattner
80450dd773 Add methods to check insert/extract element instructions for validity
llvm-svn: 27522
2006-04-08 04:04:54 +00:00
Chris Lattner
03ffb7f3a9 regenerate
llvm-svn: 27521
2006-04-08 03:55:17 +00:00
Chris Lattner
6be33112a7 Add insertelement and shufflevector constantexpr support
llvm-svn: 27520
2006-04-08 03:53:34 +00:00
Reid Spencer
2bab033f26 Fix recursion:
1. Make setting OPTIONAL_DIRS use immediate assignment
2. Include Makefile.config before ifeq tests and then Makefile.rules later
   instead of Makefile.common up front. This ensures that the variable
   values are set before the ifeq statements in Makefile.rules are
   evaluated.
With this, recursion into projects/examples is corrected.

llvm-svn: 27519
2006-04-08 02:14:37 +00:00
Reid Spencer
96d179528e Don't build projects/examples if libs-only was specified.
llvm-svn: 27518
2006-04-08 01:57:10 +00:00
Evan Cheng
375bec1961 INSERT_VECTOR_ELT lowering bug:
store vector to $esp
  store element to $esp + sizeof(VT) * index
  load  vector from $esp
The bug is VT is the type of the vector element, not the type of the vector!

llvm-svn: 27517
2006-04-08 01:46:37 +00:00
Reid Spencer
cfc429b2e8 Ensure that the automatic "CVS build" detection works for both
objdir == srcdir and objdir != srcdir.

llvm-svn: 27516
2006-04-08 01:41:26 +00:00
Chris Lattner
c84c3d7c32 Add shufflevector support
llvm-svn: 27515
2006-04-08 01:19:47 +00:00
Chris Lattner
234481e1ba Stub out shufflevector
llvm-svn: 27514
2006-04-08 01:19:25 +00:00
Chris Lattner
a0a718c0cc Add supprot for shufflevector
llvm-svn: 27513
2006-04-08 01:19:12 +00:00
Chris Lattner
70b56ea647 regenerate
llvm-svn: 27512
2006-04-08 01:18:56 +00:00
Chris Lattner
97a47d4c9c Parse shufflevector
llvm-svn: 27511
2006-04-08 01:18:35 +00:00
Chris Lattner
14b19acd56 Add shufflevector support, todo, implement better constant folding.
llvm-svn: 27510
2006-04-08 01:18:18 +00:00
Chris Lattner
4bd21d8de2 Add shufflevector reading support
llvm-svn: 27509
2006-04-08 01:17:59 +00:00
Chris Lattner
eb990aaaf6 new testcase for shufflevector
llvm-svn: 27508
2006-04-08 01:17:42 +00:00
Chris Lattner
e2d0c1084a Add a new shufflevector instruction
llvm-svn: 27507
2006-04-08 01:15:18 +00:00
Evan Cheng
0916c33201 ldmxcsr and stmxcsr.
llvm-svn: 27506
2006-04-08 00:47:44 +00:00
Evan Cheng
e55651f4d7 Fix int_x86_sse_stmxcsr and int_x86_sse_ldmxcsr. Not directly translated from
gcc builtins. They are not lowered into these intrinsics which take a ptr
argument.

llvm-svn: 27505
2006-04-08 00:47:01 +00:00
Jeff Cohen
fdd439209d Get Visual Studio building again.
llvm-svn: 27504
2006-04-08 00:43:03 +00:00
Jim Laskey
bec0d42d8d Remove section change in function end, preventing override of function's real
section.

llvm-svn: 27503
2006-04-08 00:35:59 +00:00
Chris Lattner
f18ce95ff2 Description for the new shufflevector instruction I'm adding.
llvm-svn: 27502
2006-04-08 00:13:41 +00:00
Evan Cheng
281a7abddf Code clean up.
llvm-svn: 27501
2006-04-07 21:53:05 +00:00
Evan Cheng
06b01067e0 Doh!
llvm-svn: 27500
2006-04-07 21:52:15 +00:00
Reid Spencer
04730dfbf7 Invert the tests on LLVMGCC_MAJVERS to check for value 4 instead of value
3. This ensures that if llvm-gcc isn't available and consequently the value
of LLVMGCC_MAJVERS is blank, that the old (include runtime) behavior will
persist.

llvm-svn: 27499
2006-04-07 21:45:23 +00:00
Evan Cheng
12da231c27 Added patterns for MOVHPSmr and MOVLPSmr.
llvm-svn: 27497
2006-04-07 21:20:58 +00:00
Evan Cheng
0dd7987d36 Keep track of an Mac OS X / x86 ABI bug.
llvm-svn: 27496
2006-04-07 21:19:53 +00:00
Evan Cheng
36de346008 Remove int_x86_sse_storeh_ps and int_x86_sse_storel_ps. These are now lowered
by the frontend.

llvm-svn: 27495
2006-04-07 21:18:40 +00:00
Jim Laskey
fabb0ba736 Make sure that debug labels are defined within the same section and after the
entry point of a function.

llvm-svn: 27494
2006-04-07 20:44:42 +00:00
Chris Lattner
132373d144 add a newline at the end of the file
llvm-svn: 27492
2006-04-07 18:41:16 +00:00
Jim Laskey
b93bc75add Foundation for call frame information.
llvm-svn: 27491
2006-04-07 16:34:46 +00:00
Chris Lattner
5ef0e91718 THis -> This
llvm-svn: 27490
2006-04-07 16:21:59 +00:00
Reid Spencer
bc88d6857e For PR723:
Configure with the --enable-optimized and --enable-assertions option to
ensure that binary RPM packages are built with the options required by the
feature request.

llvm-svn: 27489
2006-04-07 16:07:37 +00:00
Reid Spencer
0c6aa1e21e For PR723:
1. Don't force debug builds to have assertion checking turned on always.
   Let the default (on) be taken, or overridden by the command line
2. Create two new BuildModes based on assertion checking: Release+Assert
   and Debug-Assert.
3. Ensure that when building a distribution we get a release build with
   assertions enabled, regardless of the tree's configuration.
4. (unrelated) Fix library name generation for llvm-config usage.

llvm-svn: 27488
2006-04-07 16:06:18 +00:00
Reid Spencer
24021a2c49 For PR723:
Support detection of a "CVS" directory at configure time to distinguish
whether this is a release build or a "from tree" build. This knowledge is
used to set the defaults for --enable-optimzied and --enable-assertions
options.

llvm-svn: 27487
2006-04-07 16:01:51 +00:00
Reid Spencer
dfdc1ef793 For PR723:
- Provide for the include of ENABLE_ASSERTIONS flag from the configuration.
- Enhance the documentation for ENABLE_OPTIMIZED

llvm-svn: 27486
2006-04-07 15:59:41 +00:00
Reid Spencer
d4bdc7793c For PR723:
Print out something at the end of the build that indicates what kind of
build has just completed.

llvm-svn: 27485
2006-04-07 15:58:18 +00:00
Reid Spencer
295a3aa9be Ignore stuff built by "make dist".
llvm-svn: 27484
2006-04-07 15:55:18 +00:00
Evan Cheng
29e481eeff A saner workaround. I hope.
llvm-svn: 27483
2006-04-07 08:31:56 +00:00
Evan Cheng
16cd1588dd Temporary workaround for a Mac OSX specific issue.
llvm-svn: 27482
2006-04-07 08:10:09 +00:00
Evan Cheng
1041cdddc2 Added more shuffle tests
llvm-svn: 27481
2006-04-07 05:35:45 +00:00
Chris Lattner
f358863a69 We have an assertion that checks that we do not encode null values into the
.bc file if they are supposed to be implicit.  This is cool, except that it
checked *after* constant expr folding: improving constant expr folding could
cause the .bc reader to assert out on old .bc files.  Move the check so that
it checks all simple constants, but no constantexprs.

llvm-svn: 27480
2006-04-07 05:00:02 +00:00
Chris Lattner
8c5ac50fb4 Constant fold extractelement(zero, x) -> zero
llvm-svn: 27479
2006-04-07 04:44:06 +00:00
Chris Lattner
32b65613d9 Fix inlining of insert/extract element constantexprs
llvm-svn: 27478
2006-04-07 04:41:03 +00:00