"git@repo.hca.bsc.es:rferrer/llvm-epi-0.8.git" did not exist on "1dcd70c1342eeae52ad5644b80fceb8ae29233fc"
- Jan 14, 2012
-
-
Andrew Trick authored
llvm-svn: 148172
-
- Dec 14, 2011
-
-
Evan Cheng authored
to finalize MI bundles (i.e. add BUNDLE instruction and computing register def and use lists of the BUNDLE instruction) and a pass to unpack bundles. - Teach more of MachineBasic and MachineInstr methods to be bundle aware. - Switch Thumb2 IT block to MI bundles and delete the hazard recognizer hack to prevent IT blocks from being broken apart. llvm-svn: 146542
-
- Dec 07, 2011
-
-
Evan Cheng authored
generator to it. For non-bundle instructions, these behave exactly the same as the MC layer API. For properties like mayLoad / mayStore, look into the bundle and if any of the bundled instructions has the property it would return true. For properties like isPredicable, only return true if *all* of the bundled instructions have the property. For properties like canFoldAsLoad, isCompare, conservatively return false for bundles. llvm-svn: 146026
-
- Nov 15, 2011
-
-
Benjamin Kramer authored
llvm-svn: 144648
-
- Jul 01, 2011
-
-
Evan Cheng authored
llvm-svn: 134259
-
- Jun 16, 2011
-
-
Jakob Stoklund Olesen authored
No functional change was intended. llvm-svn: 133202
-
- Jun 02, 2011
-
-
Devang Patel authored
llvm-svn: 132487
-
- Jun 01, 2011
-
-
Andrew Trick authored
For targets with no itinerary (x86) it is a nop by default. For targets with issue width already expressed in the itinerary (ARM) it bypasses a scoreboard check but otherwise does not affect the schedule. It does make the code more consistent and complete and allows new targets to specify their issue width in an arbitrary way. llvm-svn: 132385
-
- May 06, 2011
-
-
Andrew Trick authored
llvm-svn: 131001
-
Andrew Trick authored
The post-ra scheduler was explicitly updating the depth of a node's successors after scheduling it, regardless of whether the successor was ready. This is quadratic for DAGs with transitively redundant edges. I simply removed the useless update of depth, which is lazilly computed later. Fixes <rdar://problem/9044332> compiler takes way too long to build TextInput. llvm-svn: 130992
-
- Dec 24, 2010
-
-
Andrew Trick authored
DAG scheduling during isel. Most new functionality is currently guarded by -enable-sched-cycles and -enable-sched-hazard. Added InstrItineraryData::IssueWidth field, currently derived from ARM itineraries, but could be initialized differently on other targets. Added ScheduleHazardRecognizer::MaxLookAhead to indicate whether it is active, and if so how many cycles of state it holds. Added SchedulingPriorityQueue::HasReadyFilter to allowing gating entry into the scheduler's available queue. ScoreboardHazardRecognizer now accesses the ScheduleDAG in order to get information about it's SUnits, provides RecedeCycle for bottom-up scheduling, correctly computes scoreboard depth, tracks IssueCount, and considers potential stall cycles when checking for hazards. ScheduleDAGRRList now models machine cycles and hazards (under flags). It tracks MinAvailableCycle, drives the hazard recognizer and priority queue's ready filter, manages a new PendingQueue, properly accounts for stall cycles, etc. llvm-svn: 122541
-
- Sep 10, 2010
-
-
Evan Cheng authored
take multiple cycles to decode. For the current if-converter clients (actually only ARM), the instructions that are predicated on false are not nops. They would still take machine cycles to decode. Micro-coded instructions such as LDM / STM can potentially take multiple cycles to decode. If-converter should take treat them as non-micro-coded simple instructions. llvm-svn: 113570
-
- Aug 06, 2010
-
-
Owen Anderson authored
llvm-svn: 110460
-
Owen Anderson authored
llvm-svn: 110410
-
Owen Anderson authored
ID member as the sole unique type identifier. Clean up APIs related to this change. llvm-svn: 110396
-
- Jul 15, 2010
-
-
Bill Wendling authored
llvm-svn: 108450
-
- Jun 19, 2010
-
-
Evan Cheng authored
- This fixed a number of bugs in if-converter, tail merging, and post-allocation scheduler. If-converter now runs branch folding / tail merging first to maximize if-conversion opportunities. - Also changed the t2IT instruction slightly. It now defines the ITSTATE register which is read by instructions in the IT block. - Added Thumb2 specific hazard recognizer to ensure the scheduler doesn't change the instruction ordering in the IT block (since IT mask has been finalized). It also ensures no other instructions can be scheduled between instructions in the IT block. This is not yet enabled. llvm-svn: 106344
-
- Jun 14, 2010
-
-
Evan Cheng authored
- Rename ExactHazardRecognizer to PostRAHazardRecognizer and move its header to include to allow targets to extend it. llvm-svn: 105959
-
- Jun 12, 2010
-
-
Evan Cheng authored
llvm-svn: 105862
-
- May 21, 2010
-
-
Evan Cheng authored
that are aliases of the specified register. - Rename modifiesRegister to definesRegister since it's looking a def of the specific register or one of its super-registers. It's not looking for def of a sub-register or alias that could change the specified register. - Added modifiesRegister to look for defs of aliases. llvm-svn: 104377
-
- May 20, 2010
-
-
Jim Grosbach authored
llvm-svn: 104254
-
Jim Grosbach authored
llvm-svn: 104175
-
- May 14, 2010
-
-
Jim Grosbach authored
llvm-svn: 103806
-
Jim Grosbach authored
while debugging what's mishandled about them in the post-RA pass. llvm-svn: 103805
-
- May 01, 2010
-
-
Dan Gohman authored
changes before doing phi lowering for switches. llvm-svn: 102809
-
- Apr 17, 2010
-
-
Bob Wilson authored
just remove them all. Radar 7873207 (working around the root problem of Radar 7759363). llvm-svn: 101604
-
- Apr 12, 2010
-
-
Dan Gohman authored
llvm-svn: 101043
-
- Mar 05, 2010
-
-
Dale Johannesen authored
llvm-svn: 97765
-
- Jan 05, 2010
-
-
David Greene authored
llvm-svn: 92594
-
- Dec 09, 2009
-
-
- Dec 03, 2009
-
-
Jakob Stoklund Olesen authored
The MO reference to a MachineOperand can be invalidated by MachineInstr::addOperand. Don't even use it for debugging. llvm-svn: 90381
-
- Nov 20, 2009
-
-
David Goodwin authored
Remove some old experimental code that is no longer needed. Remove additional, speculative scheduling pass as its cost did not translate into significant performance improvement. Minor tweaks. llvm-svn: 89471
-
- Nov 13, 2009
-
-
David Goodwin authored
llvm-svn: 88682
-
- Nov 12, 2009
-
-
David Goodwin authored
llvm-svn: 87015
-
- Nov 10, 2009
-
-
David Goodwin authored
llvm-svn: 86634
-
David Goodwin authored
Allow targets to specify register classes whose member registers should not be renamed to break anti-dependencies. llvm-svn: 86628
-
- Nov 05, 2009
-
-
David Goodwin authored
Break anti-dependencies using free registers in a round-robin manner to avoid introducing new anti-dependencies. llvm-svn: 86098
-
- Nov 03, 2009
-
-
David Goodwin authored
Do a scheduling pass ignoring anti-dependencies to identify candidate registers that should be renamed. llvm-svn: 85939
-
- Oct 31, 2009
-
-
Dan Gohman authored
- Be consistent when referring to MachineBasicBlocks: BB#0. - Be consistent when referring to virtual registers: %reg1024. - Be consistent when referring to unknown physical registers: %physreg10. - Be consistent when referring to known physical registers: %RAX - Be consistent when referring to register 0: %reg0 - Be consistent when printing alignments: align=16 - Print jump table contents. - Don't print host addresses, in general. - and various other cleanups. llvm-svn: 85682
-
- Oct 28, 2009
-
-
David Goodwin authored
llvm-svn: 85412
-