94 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			LLVM
		
	
	
	
			
		
		
	
	
			94 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			LLVM
		
	
	
	
; RUN: llc -mtriple=aarch64-- -debug-pass=Structure %s -o /dev/null 2>&1 \
 | 
						|
; RUN:   --debugify-and-strip-all-safe=0 \
 | 
						|
; RUN:   -verify-machineinstrs=0 -O0 \
 | 
						|
; RUN:   | FileCheck %s --check-prefixes=ENABLED,FALLBACK
 | 
						|
 | 
						|
; RUN: llc -mtriple=aarch64-- -debug-pass=Structure %s -o /dev/null 2>&1 \
 | 
						|
; RUN:   --debugify-and-strip-all-safe=0 \
 | 
						|
; RUN:   -verify-machineinstrs -O0 \
 | 
						|
; RUN:   | FileCheck %s --check-prefixes=ENABLED,FALLBACK,VERIFY,VERIFY-O0
 | 
						|
 | 
						|
; RUN: llc -mtriple=aarch64-- -debug-pass=Structure %s -o /dev/null 2>&1 \
 | 
						|
; RUN:   --debugify-and-strip-all-safe=0 \
 | 
						|
; RUN:   -verify-machineinstrs=0 -O0 -aarch64-enable-global-isel-at-O=0 -global-isel-abort=1 \
 | 
						|
; RUN:   | FileCheck %s --check-prefixes=ENABLED,NOFALLBACK
 | 
						|
 | 
						|
; RUN: llc -mtriple=aarch64-- -debug-pass=Structure %s -o /dev/null 2>&1 \
 | 
						|
; RUN:   --debugify-and-strip-all-safe=0 \
 | 
						|
; RUN:   -verify-machineinstrs=0 -O0 -aarch64-enable-global-isel-at-O=0 -global-isel-abort=2  \
 | 
						|
; RUN:   | FileCheck %s --check-prefixes=ENABLED,FALLBACK
 | 
						|
 | 
						|
; RUN: llc -mtriple=aarch64-- -debug-pass=Structure %s -o /dev/null 2>&1 \
 | 
						|
; RUN:   --debugify-and-strip-all-safe=0 \
 | 
						|
; RUN:   -verify-machineinstrs=0 -global-isel \
 | 
						|
; RUN:   | FileCheck %s --check-prefix ENABLED --check-prefix NOFALLBACK --check-prefix ENABLED-O1
 | 
						|
 | 
						|
; RUN: llc -mtriple=aarch64-- -debug-pass=Structure %s -o /dev/null 2>&1 \
 | 
						|
; RUN:   --debugify-and-strip-all-safe=0 \
 | 
						|
; RUN:   -verify-machineinstrs=0 -global-isel -global-isel-abort=2 \
 | 
						|
; RUN:   | FileCheck %s --check-prefix ENABLED --check-prefix FALLBACK  --check-prefix ENABLED-O1
 | 
						|
 | 
						|
; RUN: llc -mtriple=aarch64-- -debug-pass=Structure %s -o /dev/null 2>&1 \
 | 
						|
; RUN:   --debugify-and-strip-all-safe=0 \
 | 
						|
; RUN:   -verify-machineinstrs=0 -O1 -aarch64-enable-global-isel-at-O=3 \
 | 
						|
; RUN:   | FileCheck %s --check-prefix ENABLED  --check-prefix ENABLED-O1
 | 
						|
 | 
						|
; RUN: llc -mtriple=aarch64-- -debug-pass=Structure %s -o /dev/null 2>&1 \
 | 
						|
; RUN:   --debugify-and-strip-all-safe=0 \
 | 
						|
; RUN:   -verify-machineinstrs=0 -O1 -aarch64-enable-global-isel-at-O=0 \
 | 
						|
; RUN:   | FileCheck %s --check-prefix DISABLED
 | 
						|
 | 
						|
; RUN: llc -mtriple=aarch64-- -debug-pass=Structure %s -o /dev/null 2>&1 \
 | 
						|
; RUN:   --debugify-and-strip-all-safe=0 \
 | 
						|
; RUN:   -verify-machineinstrs=0 -aarch64-enable-global-isel-at-O=-1 \
 | 
						|
; RUN:   | FileCheck %s --check-prefix DISABLED
 | 
						|
 | 
						|
; RUN: llc -mtriple=aarch64-- -debug-pass=Structure %s -o /dev/null 2>&1 \
 | 
						|
; RUN:   --debugify-and-strip-all-safe=0 \
 | 
						|
; RUN:   -verify-machineinstrs=0 | FileCheck %s --check-prefix DISABLED
 | 
						|
 | 
						|
; RUN: llc -mtriple=aarch64-- -fast-isel=0 -global-isel=false \
 | 
						|
; RUN:   --debugify-and-strip-all-safe=0 \
 | 
						|
; RUN:   -debug-pass=Structure %s -o /dev/null 2>&1 -verify-machineinstrs=0 \
 | 
						|
; RUN:   | FileCheck %s --check-prefix DISABLED
 | 
						|
 | 
						|
; ENABLED: Safe Stack instrumentation pass
 | 
						|
 | 
						|
; ENABLED-O1: Basic Alias Analysis (stateless AA impl)
 | 
						|
; ENABLED-O1-NEXT: Function Alias Analysis Results
 | 
						|
; ENABLED:       IRTranslator
 | 
						|
; VERIFY-NEXT:   Verify generated machine code
 | 
						|
; ENABLED-NEXT:  Analysis for ComputingKnownBits
 | 
						|
; ENABLED-O1-NEXT:  MachineDominator Tree Construction
 | 
						|
; ENABLED-O1-NEXT:  Analysis containing CSE Info
 | 
						|
; ENABLED-O1-NEXT:  PreLegalizerCombiner
 | 
						|
; VERIFY-O0-NEXT:  AArch64O0PreLegalizerCombiner
 | 
						|
; VERIFY-NEXT:   Verify generated machine code
 | 
						|
; ENABLED-O1-NEXT: LoadStoreOpt
 | 
						|
; VERIFY-O0-NEXT:  Analysis containing CSE Info
 | 
						|
; ENABLED-NEXT:  Legalizer
 | 
						|
; VERIFY-NEXT:   Verify generated machine code
 | 
						|
; ENABLED:  RegBankSelect
 | 
						|
; VERIFY-NEXT:   Verify generated machine code
 | 
						|
; ENABLED-NEXT:  Localizer
 | 
						|
; VERIFY-O0-NEXT:   Verify generated machine code
 | 
						|
; ENABLED-NEXT: Analysis for ComputingKnownBits
 | 
						|
; ENABLED-O1-NEXT: Lazy Branch Probability Analysis
 | 
						|
; ENABLED-O1-NEXT: Lazy Block Frequency Analysis
 | 
						|
; ENABLED-NEXT:  InstructionSelect
 | 
						|
; ENABLED-O1-NEXT:  AArch64 Post Select Optimizer
 | 
						|
; VERIFY-NEXT:   Verify generated machine code
 | 
						|
; ENABLED-NEXT:  ResetMachineFunction
 | 
						|
 | 
						|
; FALLBACK:       AArch64 Instruction Selection
 | 
						|
; NOFALLBACK-NOT: AArch64 Instruction Selection
 | 
						|
 | 
						|
; DISABLED-NOT: IRTranslator
 | 
						|
 | 
						|
; DISABLED: AArch64 Instruction Selection
 | 
						|
; DISABLED: Finalize ISel and expand pseudo-instructions
 | 
						|
 | 
						|
define void @empty() {
 | 
						|
  ret void
 | 
						|
}
 |