mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-29 10:32:47 +00:00
5d0f7af3dc
It includes a pass that rewrites all indirect calls to jumptable functions to pass through these tables. This also adds backend support for generating the jump-instruction tables on ARM and X86. Note that since the jumptable attribute creates a second function pointer for a function, any function marked with jumptable must also be marked with unnamed_addr. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@210280 91177308-0d34-0410-b5e6-96231b3b80d8
11 lines
482 B
LLVM
11 lines
482 B
LLVM
; RUN: llc < %s -debug-pass=Structure -stop-after=loop-reduce -o /dev/null 2>&1 | FileCheck %s -check-prefix=STOP
|
|
; RUN: llc < %s -debug-pass=Structure -start-after=loop-reduce -o /dev/null 2>&1 | FileCheck %s -check-prefix=START
|
|
|
|
; STOP: -loop-reduce -print-module
|
|
; STOP: Loop Strength Reduction
|
|
; STOP-NEXT: Machine Function Analysis
|
|
|
|
; START: -machine-branch-prob -jump-instr-tables -gc-lowering
|
|
; START: FunctionPass Manager
|
|
; START-NEXT: Lower Garbage Collection Instructions
|