Move lenType definition to runtime (partially)
Этот коммит содержится в:
		
							родитель
							
								
									abaae5b90d
								
							
						
					
					
						коммит
						bf160d096b
					
				
					 5 изменённых файлов: 24 добавлений и 4 удалений
				
			
		| 
						 | 
				
			
			@ -88,7 +88,7 @@ func NewCompiler(pkgName, triple string, dumpSSA bool) (*Compiler, error) {
 | 
			
		|||
 | 
			
		||||
	// Depends on platform (32bit or 64bit), but fix it here for now.
 | 
			
		||||
	c.intType = llvm.Int32Type()
 | 
			
		||||
	c.lenType = llvm.Int32Type()
 | 
			
		||||
	c.lenType = llvm.Int32Type() // also defined as runtime.lenType
 | 
			
		||||
	c.uintptrType = c.targetData.IntPtrType()
 | 
			
		||||
	c.i8ptrType = llvm.PointerType(llvm.Int8Type(), 0)
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										8
									
								
								main.go
									
										
									
									
									
								
							
							
						
						
									
										8
									
								
								main.go
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -13,11 +13,15 @@ func Compile(pkgName, runtimePath, outpath, target string, printIR, dumpSSA bool
 | 
			
		|||
	var buildTags []string
 | 
			
		||||
	// TODO: put this somewhere else
 | 
			
		||||
	if target == "pca10040" {
 | 
			
		||||
		buildTags = append(buildTags, "nrf", "nrf52", "nrf52832")
 | 
			
		||||
		// Pretend to be a WASM target, not ARM (for standard library support).
 | 
			
		||||
		buildTags = append(buildTags, "nrf", "nrf52", "nrf52832", "js", "wasm")
 | 
			
		||||
		target = "armv7m-none-eabi"
 | 
			
		||||
	} else if target == "arduino" {
 | 
			
		||||
		buildTags = append(buildTags, "avr", "avr8", "atmega", "atmega328p")
 | 
			
		||||
		// Pretend to be a WASM target, not AVR (for standard library support).
 | 
			
		||||
		buildTags = append(buildTags, "avr", "avr8", "atmega", "atmega328p", "js", "wasm")
 | 
			
		||||
		target = "avr--"
 | 
			
		||||
	} else {
 | 
			
		||||
		buildTags = append(buildTags, "linux", "amd64")
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	c, err := NewCompiler(pkgName, target, dumpSSA)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										8
									
								
								src/runtime/arch_amd64.go
									
										
									
									
									
										Обычный файл
									
								
							
							
						
						
									
										8
									
								
								src/runtime/arch_amd64.go
									
										
									
									
									
										Обычный файл
									
								
							| 
						 | 
				
			
			@ -0,0 +1,8 @@
 | 
			
		|||
// +build amd64
 | 
			
		||||
 | 
			
		||||
package runtime
 | 
			
		||||
 | 
			
		||||
const GOARCH = "amd64"
 | 
			
		||||
 | 
			
		||||
// The length type used inside strings and slices.
 | 
			
		||||
type lenType uint32
 | 
			
		||||
							
								
								
									
										8
									
								
								src/runtime/arch_wasm.go
									
										
									
									
									
										Обычный файл
									
								
							
							
						
						
									
										8
									
								
								src/runtime/arch_wasm.go
									
										
									
									
									
										Обычный файл
									
								
							| 
						 | 
				
			
			@ -0,0 +1,8 @@
 | 
			
		|||
// +build wasm
 | 
			
		||||
 | 
			
		||||
package runtime
 | 
			
		||||
 | 
			
		||||
const GOARCH = "wasm"
 | 
			
		||||
 | 
			
		||||
// The length type used inside strings and slices.
 | 
			
		||||
type lenType uint32
 | 
			
		||||
| 
						 | 
				
			
			@ -13,7 +13,7 @@ import (
 | 
			
		|||
type hashmap struct {
 | 
			
		||||
	next       *hashmap       // hashmap after evacuate (for iterators)
 | 
			
		||||
	buckets    unsafe.Pointer // pointer to array of buckets
 | 
			
		||||
	count      uint
 | 
			
		||||
	count      lenType
 | 
			
		||||
	keySize    uint8 // maybe this can store the key type as well? E.g. keysize == 5 means string?
 | 
			
		||||
	valueSize  uint8
 | 
			
		||||
	bucketBits uint8
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Загрузка…
	
	Создание таблицы
		
		Сослаться в новой задаче