private static List<String> getCompilers() {
		List<String> compilers = new ArrayList<>();

		List<LanguageDescription> languages =
			DefaultLanguageService.getLanguageService().getLanguageDescriptions(true);

		Set<String> compilerIds = new HashSet<>();
		for (LanguageDescription language : languages) {
			LanguageCompilerSpecQuery query =
				new LanguageCompilerSpecQuery(language.getProcessor(), language.getEndian(),
					language.getSize(), language.getVariant(), null);

			for (LanguageCompilerSpecPair specPair : DefaultLanguageService.getLanguageService()
				.getLanguageCompilerSpecPairs(
					query)) {
				try {
					String compilerId =
						specPair.getCompilerSpecDescription().getCompilerSpecID().getIdAsString();
					if (!compilerIds.contains(compilerId)) {
						compilerIds.add(compilerId);
						compilers.add(compilerId);
					}
				}
				catch (LanguageNotFoundException | CompilerSpecNotFoundException e) {
					// Just eat the exception - no need to rethrow or print an error
				}
			}
		}

		return compilers;
	}
Returns a list of all known compilers.

@return the list of compiler specs
Ghidra/Features/BSim/src/main/java/ghidra/features/bsim/gui/filters/CompilerBSimFilterType.java