summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/PTX
Commit message (Collapse)AuthorAgeFilesLines
* Remove the PTX back-end and all of its artifacts (triple, etc.)Justin Holewinski2012-05-2430-2186/+0
| | | | | | | | This back-end was deprecated in favor of the NVPTX back-end. NV_CONTRIB llvm-svn: 157417
* Continue cleanup of LIT, getting rid of the remaining artifacts from dejagnuEli Bendersky2012-03-251-8/+1
| | | | | | | | | | | | | | * Removed test/lib/llvm.exp - it is no longer needed * Deleted the dg.exp reading code from test/lit.cfg. There are no dg.exp files left in the test suite so this code is no longer required. test/lit.cfg is now much shorter and clearer * Removed a lot of duplicate code in lit.local.cfg files that need access to the root configuration, by adding a "root" attribute to the TestingConfig object. This attribute is dynamically computed to provide the same information as was previously provided by the custom getRoot functions. * Documented the config.root attribute in docs/CommandGuide/lit.pod llvm-svn: 153408
* Replace all instances of dg.exp file with lit.local.cfg, since all tests are ↵Eli Bendersky2012-02-162-5/+13
| | | | | | | | run with LIT now and now Dejagnu. dg.exp is no longer needed. Patch reviewed by Daniel Dunbar. It will be followed by additional cleanup patches. llvm-svn: 150664
* PTX: Continue to fix up the register mess.Justin Holewinski2011-12-062-6/+6
| | | | llvm-svn: 145947
* allow non-device function calls in PTX when natively handling device-side printfDan Bailey2011-11-111-0/+25
| | | | llvm-svn: 144388
* fixed global array handling for ptx to use the correct bit widthsDan Bailey2011-11-032-30/+30
| | | | llvm-svn: 143640
* Change the default scheduler from Latency to ILP, since LatencyDan Gohman2011-10-241-6/+6
| | | | | | is going away. llvm-svn: 142810
* PTX: Fix disabling of MAD instruction selectionJustin Holewinski2011-10-181-2/+10
| | | | llvm-svn: 142352
* PTX: Add new patterns for bitconvert and any_extendJustin Holewinski2011-09-291-5/+9
| | | | llvm-svn: 140753
* PTX: MC-ize the PTX back-end (patch 1 of N)Justin Holewinski2011-09-284-4/+4
| | | | | | | | Lay some groundwork for converting to MC-based asm printer. This is the first of probably many patches to bring the back-end back up-to-date with all of the recent MC changes. llvm-svn: 140697
* PTX: Add support for sitofp in backendJustin Holewinski2011-09-272-0/+66
| | | | llvm-svn: 140593
* PTX: Fix detection of stack load/store vs. global load/store, as well as fix theJustin Holewinski2011-09-261-2/+2
| | | | | | printing of local offsets llvm-svn: 140547
* PTX: Add .align tests to stack object test fileJustin Holewinski2011-09-261-2/+11
| | | | llvm-svn: 140537
* PTX: Fix some lingering issues with stack allocationJustin Holewinski2011-09-261-0/+10
| | | | llvm-svn: 140535
* PTX: Unify handling of loads/storesJustin Holewinski2011-09-262-130/+0
| | | | llvm-svn: 140533
* PTX: Handle function call return valuesJustin Holewinski2011-09-231-0/+13
| | | | llvm-svn: 140386
* PTX: Start fixing function callsJustin Holewinski2011-09-231-2/+1
| | | | llvm-svn: 140378
* PTX: fixup test cases for register changesJustin Holewinski2011-09-2222-524/+526
| | | | llvm-svn: 140311
* PTX: Add initial support for device function callsJustin Holewinski2011-08-091-0/+14
| | | | | | - Calls are supported on SM 2.0+ for function with no return values llvm-svn: 137125
* PTX: corrected tests that were failingDan Bailey2011-06-252-6/+6
| | | | llvm-svn: 133875
* PTX: Reverting implementation of i8.Dan Bailey2011-06-254-250/+0
| | | | | | | | The .b8 operations in PTX are far more limiting than I first thought. The mov operation isn't even supported, so there's no way of converting a .pred value into a .b8 without going via .b16, which is not sensible. An improved implementation needs to use the fact that loads and stores automatically extend and truncate to implement support for EXTLOAD and TRUNCSTORE in order to correctly support boolean values. llvm-svn: 133873
* PTX: Add support for i8 type and introduce associated .b8 registersDan Bailey2011-06-244-0/+250
| | | | | | The i8 type is required for boolean values, but can only use ld, st and mov instructions. The i1 type continues to be used for predicates. llvm-svn: 133814
* PTX: Always use registers for return values, but use .param space for deviceJustin Holewinski2011-06-2320-295/+318
| | | | | | | | | | | parameters if SM >= 2.0 - Update test cases to be more robust against register allocation changes - Bump up the number of registers to 128 per type - Include Python script to re-generate register file with any number of registers llvm-svn: 133736
* PTX: Fixup test cases for device param changesJustin Holewinski2011-06-232-2/+2
| | | | llvm-svn: 133735
* PTX: Add signed integer comparisonsJustin Holewinski2011-06-221-0/+72
| | | | llvm-svn: 133599
* PTX: Add .address_size directive if PTX version >= 2.3Justin Holewinski2011-06-221-0/+2
| | | | | | Patch by Wei-Ren Chen llvm-svn: 133589
* PTX: Fix conversion between predicates and value typesJustin Holewinski2011-06-202-54/+64
| | | | llvm-svn: 133454
* PTX: Adjust rounding modesJustin Holewinski2011-06-176-22/+22
| | | | | | | | | | | | | | | * rounding modes for fp add, mul, sub now use .rn * float -> int rounding correctly uses .rzi not .rni * 32bit fdiv for sm13 uses div.rn (instead of div.approx) * 32bit fdiv for sm10 now uses div (instead of div.approx) Approx is not IEEE 754 compatible (and should be optionally set by a flag to the backend instead). The .rn rounding modifier is the PTX default anyway, but it's better to be explicit. All these modifiers should be available by using __fmul_rz functions for example, but support will need to be added for this in the backend. Patch by Dan Bailey llvm-svn: 133253
* PTX: Finish new calling convention implementationJustin Holewinski2011-06-1614-82/+82
| | | | llvm-svn: 133172
* PTX: add flag to disable mad/fma selectionJustin Holewinski2011-05-181-0/+16
| | | | | | Patch by Dan Bailey llvm-svn: 131537
* PTX: add test cases for cvt, fneg, and selpJustin Holewinski2011-05-103-0/+274
| | | | | | Patch by Dan Bailey llvm-svn: 131128
* PTX: add PTX 2.3 language targetJustin Holewinski2011-05-061-0/+1
| | | | | | Patch by Wei-Ren Chen llvm-svn: 130980
* PTX: support for bitwise operations on predicatesJustin Holewinski2011-04-281-0/+24
| | | | | | | | | - selection of bitwise preds (AND, OR, XOR) - new bitwise.ll test Patch by Dan Bailey llvm-svn: 130353
* Make tests more useful.Benjamin Kramer2011-04-251-1/+1
| | | | | | lit needs a linter ... llvm-svn: 130126
* ptx: fix parameter orderingChe-Liang Chiou2011-04-211-4/+4
| | | | | | | | | This patch depends on the prior fix r129908 that changes to use std::find, rather than std::binary_search, on unordered array. Patch by Dan Bailey llvm-svn: 129909
* PTX: Add intrinsics to list of built-in intrinsics, which allows them to beJustin Holewinski2011-04-2019-24/+24
| | | | | | | | | | used by Clang. To help Clang integration, the PTX target has been split into two targets: ptx32 and ptx64, depending on the desired pointer size. - Add GCCBuiltin class to all intrinsics - Split PTX target into ptx32 and ptx64 llvm-svn: 129851
* ptx: support setp's 4-operand formatChe-Liang Chiou2011-04-021-0/+25
| | | | llvm-svn: 128767
* ptx: add analyze/insert/remove branchChe-Liang Chiou2011-03-221-0/+3
| | | | llvm-svn: 128084
* PTX: Fix various codegen issuesJustin Holewinski2011-03-183-46/+91
| | | | | | | | - Emit mad instead of mad.rn for shader model 1.0 - Emit explicit mov.u32 instructions for reading global variables - (most PTX instructions cannot take global variable immediates) llvm-svn: 127895
* ptx: fix parameter order that is reversedChe-Liang Chiou2011-03-181-0/+8
| | | | llvm-svn: 127874
* ptx: add unconditional and conditional branchChe-Liang Chiou2011-03-181-0/+21
| | | | llvm-svn: 127873
* PTX: Set PTX 2.0 as the minimum supported versionJustin Holewinski2011-03-152-82/+83
| | | | | | | | - Remove PTX 1.4 code generation - Change type of intrinsics to .v4.i32 instead of .v4.i16 - Add and/or/xor integer instructions llvm-svn: 127677
* PTX: Emit global arrays with proper sizesJustin Holewinski2011-03-142-40/+40
| | | | | | | - Emit all arrays as type .b8 and proper sizes in bytes to conform to the output of nvcc llvm-svn: 127584
* PTX: Add support for sqrt/sin/cos intrinsicsJustin Holewinski2011-03-141-0/+56
| | | | llvm-svn: 127578
* ptx: add set.p instruction and related changes to predicate executionChe-Liang Chiou2011-03-141-0/+109
| | | | llvm-svn: 127577
* PTX: Add preliminary support for floating-point divide and multiply-and-addJustin Holewinski2011-03-103-0/+47
| | | | llvm-svn: 127410
* ptx: add the rest of special registers of ISA version 2.0Che-Liang Chiou2011-03-101-34/+176
| | | | llvm-svn: 127397
* PTX: Add intrinsic support for ntid, ctaid, and nctaid registersJustin Holewinski2011-03-081-0/+96
| | | | llvm-svn: 127246
* ptx: add basic intrinsic supportChe-Liang Chiou2011-03-051-0/+43
| | | | llvm-svn: 127084
* Extend initial support for primitive types in PTX backendChe-Liang Chiou2011-03-029-254/+883
| | | | | | | | | | | | | | - Allow i16, i32, i64, float, and double types, using the native .u16, .u32, .u64, .f32, and .f64 PTX types. - Allow loading/storing of all primitive types. - Allow primitive types to be passed as parameters. - Allow selection of PTX Version and Shader Model as sub-target attributes. - Merge integer/floating-point test cases for load/store. - Use .u32 instead of .s32 to conform to output from NVidia nvcc compiler. Patch by Justin Holewinski llvm-svn: 126824
OpenPOWER on IntegriCloud